Predictable and adaptive personal fitness planning

ABSTRACT

Systems, methods, devices, and computer programs for generating personalized fitness programs are disclosed. One aspect comprises a method including inducing a release of a protein expression into the body, measuring a force generated by the body utilizing over ninety percent of skeletal muscle to generate the force, determining a force metric based on the force generated in relation to a parameter of the body, identifying a target force metric based on at least one user identified target metric, measuring at least one physical metric of the body, generating personalized training regimen based on the determined force metric and the at least one identified target metric, the developed training regimen configured to maximize conversion of type 1 muscle cells to type 2b muscle cells, and wherein the personalized training regimen is designed to be implemented by the body while the protein expression is present in the bloodstream of the body.

CLAIM OF PRIORITY

This application claims priority to U.S. Provisional Application No.62/111,959 entitled “PREDICTABLE AND ADAPTIVE PERSONAL FITNESS PLANNING”filed Feb. 4, 2015, the disclosure of which is hereby incorporated byreference in its entirety.

BACKGROUND

The present application relates generally to personalized fitnessprograms and exercise regimens, and more specifically to systems,devices, and methods for the development, implementation, and trackingof personal fitness programs and exercise regimens.

Personalized fitness programs can be highly complex and can involvevarious facets of an individual's life. Some personalized fitnessprograms may focus on exercise routines or training systems, while otherfitness programs may provide physical training, fitness programs, orworkout regimens based a predetermined schedule of activities given thegeneral results for an average sampling of users. Users may utilizefitness programs focusing on physical training, individual abilities, orworkout regimens to identify a user's current physical capabilities andto generate fitness programs based on the user's current physicalcapabilities with a desired physical capabilities improvement. However,improving the user's physical capabilities may prove difficult oruninspiring for users using current health programs that are unable toprovide accurate predictions for the user's expected results orefficiently obtain results after using the health program. Accordingly,health programs capable of integrating sensors configured to identifyand measure user's physical capabilities with the development of atraining regimen capable of accurately predicting the user's physicalprogression and expected results after use of the health programs aredesired.

SUMMARY

The systems, methods, devices, and computer program products discussedherein each have several aspects, no single one of which is solelyresponsible for its desirable attributes. Without limiting the scope ofthis invention as expressed by the claims which follow, some featuresare discussed briefly below. After considering this discussion, andparticularly after reading the section entitled “Detailed Description,”it will be understood how advantageous features of this inventioninclude, among other things, efficient provisioning of personalizedfitness information, predicting the user's physical metrics after usingthe fitness program, and improving the user's physical metrics.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, together with the specification, illustrateexemplary embodiments, and, together with the description, serve toexplain the principles of the present disclosure.

FIG. 1 is a network diagram illustrating one embodiment of apersonalized fitness system, in accordance with an exemplary embodiment.

FIG. 2 shows a functional block diagram of an electronic device that maybe utilized in the personalized fitness program, in accordance with anexemplary embodiment.

FIG. 3 shows an example of an activity that may induce the generation ofthe protein in a user's body, in accordance with an exemplaryembodiment.

FIG. 4 shows an example of a screenshot of a user profile screen of anapplication that may be run on the device of FIG. 2, in accordance withan exemplary embodiment.

FIGS. 5A and 5B show an example of a screenshot of an initializationscreen of the software application that may be active on the device ofFIG. 2, in accordance with an exemplary embodiment.

FIG. 6 shows an example of two screenshots of two postural evaluationscreens of the software application that may be active on the device ofFIG. 2, in accordance with an exemplary embodiment.

FIG. 7 shows an example of a screenshot of a real time coaching screenof the software application that may be active on the device of FIG. 2,in accordance with an exemplary embodiment.

FIG. 8 shows an example of a screenshot of a real time data screen ofthe software application that may be active on the device of FIG. 2, inaccordance with an exemplary embodiment.

FIG. 9 shows an example of a screenshot of a calculator or targetcalculation screen of the software application that may be active on thedevice of FIG. 2, in accordance with an exemplary embodiment.

FIG. 10 shows an example of a screenshot of a fitness program overviewscreen of the software application that may be active on the device ofFIG. 2, in accordance with an exemplary embodiment.

FIG. 11 shows an example of a screenshot of a training schedule overviewscreen of the software application that may be active on the device ofFIG. 2, in accordance with an exemplary embodiment.

FIG. 12 shows an example of a screenshot of the training scheduleoverview screen of FIG. 11 with further screenshots of the screensassociated with each of the indicated scheduled activities, inaccordance with an exemplary embodiment.

FIG. 13A and 13B show an example of a screenshot of a progress screen ofthe software application that may be active on the device of FIG. 2, inaccordance with an exemplary embodiment.

FIG. 14 shows an example of a predictive application of the personalizedfitness system described in relation to FIG. 1, in accordance with anexemplary embodiment.

FIG. 15 shows a message diagram of an example of communications that maytake place between components of the network diagram of FIG. 1, inaccordance with an exemplary embodiment.

FIG. 16 shows a flow chart of an exemplary method of generating afitness program as described in relation to FIG. 1, in accordance withan exemplary embodiment.

FIG. 17 shows a flow chart providing further details of a method forgenerating the fitness program described in FIG. 16, in accordance withan exemplary embodiment.

FIG. 18 shows a flow chart providing details of a method for updating ormodifying the fitness program described in the methods of FIG. 16 andFIG. 17, in accordance with an exemplary embodiment.

DETAILED DESCRIPTION

The present disclosure generally relates to systems, devices, andmethods for generating and implementing personalized fitness programsconfigured to receive and utilize information from external sensors (forexample, force sensors in shoes) and predict a user's results afterusing the personalized fitness programs.

How a body responds to a physical fitness regime can vary from person toperson. Physiological, genetic, and other factors can influence theeffects of exercises on a person. When the body is subjected to anexercise, a complex sequence of events occurs in the body whichultimately causes a change in the body. As the body releases certainchemicals, the efficacy of a training session may hinge on stimulatingthe body during the period when concentrations of such chemicals areheightened to ensure optimal training benefits. For example, someexercises may place more stress on the body than others. Some exercisesmay be designed to utilize over 90% of the body's skeletal muscle, whichmay stimulate the body's production of a protein that may greatlyincrease the efficacy of the training session. For example, when over90% of the body's skeletal muscle is used, the body may produce theCRTC2 protein, which may strengthen and increase energy efficiency.Additionally, the body may recruit available Type 2b muscle cells, whichmay have four times the force output of Type 1 muscle cells.Additionally, such exertion of the body's skeletal muscle may alsotrigger additional lactate transporters to better accommodate toxinsreleased intermuscularly while and after being exerted. When the userparticipates in an exercise program while the CRTC2 protein is presentin the body, the user may maximize the conversion of Type 1 muscle cellsto Type 2b muscle cells.

Additionally, the physical fitness regime may comprise multipleexercises that may have different goals. For example, one or moreexercises of the physical fitness regime may be intended to improve auser's strength (for example, a hex bar deadlift exercise), while otherexercises may be intended to improve aerobic processes or prevent injuryin the user (for example, running or stretching exercises). Thus, in asingle day or over the course of the fitness program, the user mayperform a variety of exercises intended to target or improve the user'sfitness metrics and improve the user's ability to perform without beinginjured due to imbalances and weaknesses of their body.

The features described provide a determination of how and when tostimulate the body to obtain maximum results for an exercise or regimenof exercises for a specific individual. One-size-fits-all exerciseprograms may not take into account the activity, body characteristics,and past, present, and/or future activities of a user when providing anexercise schedule. Accordingly, the features discussed in further detailbelow provide an accurate metric for an individual's fitness level,generate an exercise program which is tailored not only to the fitnesslevel but also a specified fitness goal and activity, and providedynamic adjustments to the exercise program by tracking on-goingactivities for the user. Additionally, the one-size-fits-all exerciseprograms may not be able to accurately predict results that considerdata received from external sensors (for example the shoe sensors) orother sources and may be unable to provide guaranteed improvements tothe user's starting metrics.

The features described also provide a method for generating a fitnessprogram for a user. The method may comprise receiving informationaccounting for the user's goals, current body characteristics, currentsports or activities, and the user's current physical metrics and targetmetric(s). The method may then generate an initial schedule of exercisesand other physical activities that will help the user improve thephysical metrics and attain the established goals and target metrics ina predictable fashion. The schedule of exercises and physical activitiesmay be selected based on the user's goals and current physical metricsand body characteristics. In some embodiments, the method may detectphysical activity performed by the user and update the initial scheduleaccording to the activity performed. For example, the physical activitymay comprise exercises or activities that are part of the initialschedule. In some embodiments, the physical activity may compriseexercises or activities in addition to or instead of those generated aspart of the initial schedule. Accordingly, the method may automaticallyadjust the initial schedule to generate a revised schedule, based on thedetected physical activity. In some embodiments, the adjustment of theinitial schedule may involve reorganizing the existing exercises andactivities into a new order or schedule. Some adjustments of the initialschedule may involve changing, eliminating, or adding a scheduledactivity, for example adding an additional running exercise or weightlifting exercise or adjusting the parameters for a scheduled activity,for example adjusting the speed on a scheduled run or the number ofrepetitions for a weight lifting exercise. In some embodiments, themethod may receive inputs from the external sensors (e.g., shoe forcesensors or similar sensors) and “unlock” a given exercise or scheduledactivity according to the user's performance. For example, to access aday's scheduled activities, the user may be required to perform a firstactivity or exercise, for example, a hex bar deadlift routine. Based onthe user's performance, as detected by the external sensors (forexample, the shoe sensors), the fitness program may restrict or allowthe user's ability to access and perform the remaining scheduledactivities for the day. In some embodiments, the user may be restrictedfrom accessing and performing the scheduled activities because thedetected performance may indicate that the user's body is notsufficiently rested or will not benefit fully from the scheduledactivities for some reason. If the user's detected performance indicatesthat the user will fully benefit from the scheduled activities, then theuser may be allowed to access and perform the scheduled activities.

The features described may also provide integration of the generatedexercise schedules with a calendar or other software that may be sharedby the device on which the exercise program may operate. For example,the generated exercise schedule may be merged or synchronized with theuser's general calendar (or non-exercise program calendar) and may beconfigured to provide the user with prompts or reminders regardingscheduled exercises and/or activities. In some embodiments, the exerciseprogram may be configured to monitor the user's general calendar andgenerate or adjust the initial calendar based on activities scheduled ornoted on the user's general calendar. In some embodiments, the exerciseprogram may integrate with social media applications or other messagingsoftware and may use these other applications and software to remind theuser of scheduled exercises or update the schedule once the usercompletes a scheduled exercise or activity or performs an unscheduledexercise or activity.

More specifically, the features may provide personalized fitnessprograms and software applications capable of receiving personalinformation from a user and using the received personal information inconjunction with goals established by the user to generate apersonalized fitness routine. The personalized fitness routine mayinclude one or more exercise regimens developed to elicit the user'smaximum effort over a calculated timeframe to reach the user's goals.The personalized fitness routine may receive inputs from the user andfrom various devices (for example, external shoe sensors or internalphysical sensors or imaging equipment) to generate the exercise regimento be most beneficial and efficient for the user. Once the exerciseregimen is generated, the inputs from the user and from various devicesmay be used to monitor the user's progress through the personalizedfitness routine. Based on the user's progress through and completion ofexercises in the fitness routine, the personalized fitness program maymodify the fitness program according to the user's demonstrated physicalcapabilities. In short, the aspects described may provide users with aflexible method, system, and program configured to identify the user'sphysical capabilities and provide a structured and predictive fitnessprogram that allows the user to achieve desired, personalized fitnessgoals in an efficient, healthy, and fulfilling manner.

In one aspect, a system including a centralized server and a remotelyaccessible client device configured with a software application maygenerate, monitor, and modify a user's fitness routine. The server mayreceive the user information via communications with the softwareapplication via the client device and may generate the fitness programfor the user accordingly. The server may then communicate specifics ofthe fitness program (for example, an exercise regimen, a predictedtimeline, etc.) to the software application via the client device forpresentation such as to the user. The generated fitness program may beover 99% reliable in helping the user attain the desired goals by thepredicted timeline. The software application via the client device mayassist the user's progress through the fitness program, for exampleproviding the user with a schedule, including instructions forcompleting the scheduled exercises, providing real-time coaching on theuser's performance in the scheduled exercises (for example, recommendingchanges in form or providing motivational messages), monitoring theuser's performance by tracking inputs from various sensors (internal orexternal) and/or input/output components of the mobile device on whichthe app is operating (for example, a camera, microphone, speaker,display, etc.). Throughout the user's participation in the fitnessprogram, the software application may cause the client device tocommunicate the user's progress to the server, and the server may modifythe fitness program according to the user's progress. Once the userattains the desired goal by the predicted timeline, the server mayterminate the fitness program.

One non-limiting advantage of the described features may include theability to predict, with over 99% certainty, the amount of time neededfor a generated fitness program to allow the user to progress from aninitial set of physical performance metrics to a desired set of physicalperformance metrics. An additional benefit may include the ability forthe system to generate a personalized fitness program based on theuser's initial physical capabilities and the user's target goals, wherethe fitness program is personalized based on the user's initial physicalcapabilities and physical metrics to provide exercises andrecommendations to reach the target goals within the target deadline.Unlike other systems which are unable to accurately predict the user'send results or require users to have expensive equipment, havesubstantial knowledge of kinesiology or exercise physiology, and/orlaboriously enter volumes of data, this system is based on basic,initial inputs that most users know (for example, age, weight) andutilizes equipment that is often readily available. From these basic,initial inputs, the expert system may tailor a personalized fitnessprogram for a user which is over 99 percent effect in assisting the userto attain his/her goals. This allows the user to more effectively andefficiently utilize their exercise time and minimize adverse effects ofexisting exercise programs.

FIG. 1 shows an embodiment of a network diagram 100 of a personalizedfitness program generation and implementation system, in accordance withan exemplary embodiment. As shown in FIG. 1, multiple users 102 a-102 cmay each have a mobile device 120 a-120 c configured to connect to anetwork 104. In some embodiments, the user 102 c may comprise one ormore peripheral devices. As shown in FIG. 1, the peripheral devices maycomprise a pair of shoes 122 a or glasses 122 b (collectively orindividually referred to hereafter as “the peripheral device 122” or“the peripheral devices 122”) that comprises one or more sensorsconfigured to measure forces or other user metrics. In some embodiments,the one or more sensors of the peripheral device 122 may be configuredto interface and communicate with the mobile device 120 c of the user102 c The network 104 may connect the mobile devices 120 a-120 c to afitness program system 105. The fitness program system 105 may comprisea fitness activity server 106, a force/metric data store 108, anexercise data store 110, and a fitness program data store 112. Thearrows shown between the mobile devices 120 a-120 c and the network 104,the network 104 and the fitness program system 105, the fitness activityserver 106 and the force/metric data store 108, the fitness activityserver 106 and the exercise data store 110, and the fitness activityserver 106 and the fitness program data store 112 may representcommunications between the various devices and components of the networkdiagram 100. The communications indicated may be either bidirectional orunidirectional and any communication method may perform thecommunications indicate, for example IEEE 802.15 compliant Bluetooth)communications, IEEE 802.11 standard compliant Wi-Fi communications,IEEE 802.3 Ethernet communications, near-field communications, orequivalents thereof. In some embodiments, a bus system may perform thecommunications. For example, the communications between the fitnessactivity server 106, the force/metric data store 108, the exercise datastore 110, and the fitness program data store 112 may occur via a singlebus system when these components are all part of a single or integratedsystem such as the fitness program system 105.

The mobile devices 120 a-120 c may be configured to display or otherwisecommunicate information between the respective users 102 a-102 c and thefitness program system 105 via the network 104. For example, the mobiledevices 120 a-120 c may function as an interface between the users 102a-102 c and the fitness program system 105. In some embodiments, theusers 102 a-102 c may use the mobile devices 120 a-120 c to inputinformation to the fitness program system 105 and/or view informationfrom the fitness program system 105. For example, the mobile devices 120a-120 c may provide to the fitness program system 105 an initial forcemetric or other physical metrics or personal account information for therespective user 102 a-102 c. The fitness program system 105 may generatea fitness program for the user based on these initial metrics.Additionally, or alternatively, the mobile devices 120 a-120 c may beconfigured to monitor a user's progress through the generated fitnessprogram. In some embodiments, the mobile devices 120 a-120 c may beconfigured to perform real-time tracking of progress through scheduledexercises or to show progress or scheduling updates to the users 102a-102 c pertaining to the generated fitness program. The tracking by themobile devices 110 a-120 c may include tracking non-scheduledactivities, such as number of steps, impromptu running, or the like. Thetracking may utilize one or more sensors integrated in the mobile devicesuch as an accelerometer, a camera, or a microphone. The tracking, insome implementations, may be based on sensor data received by the mobiledevice from an external sensor in data communication with the mobiledevice.

In some embodiments, the mobile devices 120 a-120 c may comprise one ofa cellular phone, a multimedia device, a watch, a PDA, or any otherportable electronic device capable of communicating with otherelectronic devices in a wired or wireless manner. In some embodiments,the mobile devices 120 a-120 c may comprise devices capable of operatinga software application (app) or program, wherein the app may beconfigured to generate, implement, and/or monitor a fitness programstored locally or on a remote device, for example, the fitness programsystem 105, for one or more users 102 a-102 c. In some embodiments, theapp may interact with the mobile devices 120 a-120 c, the one or moreperipheral devices 122, and the network 104 and allow for userinteraction directly via one of the mobile devices 120 a-120 c or theperipheral device 122. The connection of the mobile devices 120 a-120 cto the network 104 may allow the users 102 a-102 c to remotely interactwith the fitness program via an external or third-party device orprogram. In some embodiments, the mobile devices 120 a-120 c may beconfigured to store data for later transmission via the network 104, forexample, when the mobile devices 120 a-120 c are not capable of wirelessor wired communications with the network 104 without additional hardware(for example, a PDA that may need to be placed in a dock before it iscapable of network communications on the network 104).

In some embodiments, the user 102 c may utilize the peripheralelectronic device 122, which may be configured to interface or couplewith the mobile device 120 c, the network 104, or an external electronicdevice (not shown in this figure). As shown in FIG. 1, the peripheralelectronic device 122 may be shown as a pair of glasses or a shoecontaining sensors on the user 102 c. As described above, the peripheralelectronic device 122 may be configured to interface or couple with themobile device 120 c via Bluetooth, Wi-Fi, or any other wireless or wiredmeans of data communication. The peripheral electronic device 122 mayinclude one or more sensors configured to count footsteps, measure forceexerted, measure distance traversed in a step, measure height ordistance jumped, or measure or count any other physical or force metricobtained via any body or other physical or electrical sensors (forexample a heart rate, oxygen levels in blood, etc.). Once the countingor measuring is complete (or while the counting or measuring iscontinuously being updated), the peripheral electronic device 122 may beconfigured to communicate the counted or measured information to themobile device 120 c via the interface described above. For example, inoperation, the peripheral electronic device 122 may be configured tointeract with the user 102 c by counting a number of steps taken by theuser 102 c and communicating the count to the mobile device 120 c or toa destination on the network 104. In some embodiments, the informationcaptured by the peripheral electronic device 122 may be used to updateor modify an existing fitness program. Thus, external sensors may coupleto the fitness program system. The external sensors may provide to thefitness program system additional metrics and other related informationabout the user's performance of one or more exercises of the user'spersonalized fitness program or of the user's performance of one or moreexercises or activities in addition to those of the fitness program. Insome embodiments, the peripheral electronic device 122 may be configuredto integrate with the app operating on the mobile devices 120 a-120 c.While FIG. 1 depicts the peripheral electronic device 122 as a pair ofglasses, in some embodiments, the peripheral electronic device 122 mayinclude sensors embedded within a shoe or pedometer worn on an articleof clothing or another part of the body, or a sensor embedded within awrist-watch or bracelet, or any other electronic device that may beconfigured to measure or identify physical movement of the user.

The network 104 may be one of the Internet, a local intranet, a localnetwork connection isolated from external access, or any other networkstructure. As described above, the mobile devices 120 a-120 c may beconfigured to communicate on the network 104 via any known means forcommunicating information. In some embodiments, the network 104 mayallow the devices 120 a-120 c to communicate with each other. In someembodiments, the network 104 may be configured to allow the devices 120a-120 c to communicate with the fitness activity server 106. The network104 may include one or more mediums of communication, wired or wireless,depending on the implementation.

As discussed above, the fitness program system 105 may be configured toreceive information from and communicate information to the mobiledevices 120 a-120 c via the network 104. For example, the fitnessactivity server 106 may receive information such as the user's or themobile device 120 a-120 c's identification, which may includeinformation regarding the identity of the user 102 a-102 c or the mobiledevice 120 a-120 c, force metrics or other data related to scheduledexercises, desired target metrics, a request for a new or updatedfitness program, or any other information relating to a fitness programassociated with the identified user 102 a-102 e or the identified mobiledevice 1120 a-120 c. The fitness program system 105 may use the receivedinformation to develop, modify, or track the user's fitness program andprogress throughout the user's fitness program.

For example, the fitness program system 105 may receive, via the network104, the personal identifier associated with the mobile device 120 b.The fitness program system 105 may use the received personal identifierassociated with the mobile device 120 b to access an account for theuser 102 b in the fitness program data store 112, which may include anexisting fitness program. In some embodiments, the fitness programsystem 105 may further receive acknowledgement of completion of a day'sassigned exercises or similar feedback and may update the user's fitnessprogram associated with the user 102 b and the mobile device 120 b, forexample updating a prediction of the expected completion date based onthe received information or generating one or more new exercise regimensfor the user's fitness program. In some embodiments, the fitness programsystem 105 may receive a revised target performance metric and may beconfigured to update the expected completion date or update the user'sfitness program based on the new desired target performance metric fromthe user 102 b. The fitness program system 105 may be further configuredto transmit a response hack to the mobile device 120 b indicating thecurrent or new expected completion date of the fitness program andindicating a revised exercise regimen for the fitness program, ifapplicable.

Accordingly, the fitness program system 105 may be configured togenerate, modify, track, or delete a user's fitness program based on theuser's current physical abilities or physical condition (as measured byinitial or current performance metrics) and a desired physical abilitiesor physical condition (as measured by desired performance metrics).Based on these initial/current and desired physical abilities orphysical condition, the fitness program system 105 may use data from theforce/metric data store 108 and exercise data from the exercise datastore 110 to generate or modify the user's fitness program, which may bestored in the fitness program store 112. For example, the fitnessprogram system 105 may generate the user's fitness program based, atleast in part, on the user's initial and desired (or target) physicalmetrics. For example, the fitness program system 105 may select theinitial exercises of the user's personalized fitness program based onthe user's current physical capabilities and may select subsequentscheduled exercises that will help the user reach the desired targetmetrics.

In some embodiments, the fitness program system 105 may modify generatedfitness programs based on inputs or metrics received from the user orfrom the peripheral electronics 122. For example, based on the inputs ormetrics, the fitness program system 105 may determine that the user isperforming the generated fitness program according to schedule or maydetermine that the user is performing ahead of schedule or behindschedule. Accordingly, the fitness program system 105 my automaticallyupdate the fitness program schedule or the exercises of the fitnessprogram schedule based on the inputs and metrics received from thesensors of the peripheral electronics 122. For example, when theperipheral electronics 122 detects the user performed a run, theassociated metrics may be communicated to the fitness program system 105so the fitness program system 105 may automatically update the user'sfitness program. For example, if the user completes a scheduled run,then the fitness program system 105 may automatically clear the run fromthe user's fitness program. If the user completes an unscheduled run,then the fitness program system 105 may adjust the user's fitnessprogram to account for the unscheduled activity. This adjustment maycomprise deleting one or more scheduled exercises or activities from theuser's fitness program. Unscheduled activities or exercises may reducethe amount of time until the user's target metrics are met.

Once the fitness program system 105 completes the generation,modification, tracking, or deletion of the user's fitness program, thefitness program system 105 may generate an output to the network 104 fordelivery to the mobile device 120 b. For example, the fitness programsystem 105 may output the generated fitness program to the mobile device120 b via the network 104. Alternatively, the fitness program system 105may output a confirmation or a congratulatory message in response toreceiving an indication that the user completed a scheduled exercise orattained a target metric. In some embodiments, the fitness programsystem 105 may output the expected completion date of the fitnessprogram for display on the mobile device 120 b to the user 102 b.

As described briefly above, the force/metric data store 108 and theexercise data store 110 may include various information relating toforce metrics and exercises, respectively, and the fitness program datastore 112 may include generated profiles and fitness programs associatedwith users who communicate with the fitness program system 105. In someembodiments, the force/metric data store 108, the exercise data store110, and the fitness program data store 112 may not be separate datastores but may rather be coupled into a single data store or acombination of shared and separate data stores (not shown in thisfigure). In some embodiments, the data stored in the force/metric datastore 108, the exercise data store 110, and the fitness program datastore 112 may be divided into multiple additional data stores (not shownin this figure).

The data stored in the force/metric data store 108 may store data thatmay correspond to force metrics and associations with fitnesscapabilities. The force/metric data store 108 (and the exercise datastore 110 and the fitness program data store 112) may include a databaseor similar storage structure that associates a force metric and a user'sweight or mass with various performance metrics. For example, the forcemetric data store 108 may store associations between force metrics andperformance metrics. Thus, given the user's performance metric (forexample, vertical height jumped), the fitness program system mayidentify an associated force metric using the user's personalinformation, and this identified force metric may correspond with theuser's force metric. Alternatively, the fitness program may user theuser's force metric to identify a specific performance metric (forexample, the vertical height the user is capable of jumping or a speedin which the user is capable of running a 40-yard dash, or any other ofa number of identified performance metrics). In some embodiments, thefitness program system 105 may be configured to calculate the user'sforce metric based on information provided by the user and store thecalculated force metric in the force/metric data store 108. The fitnessprogram system 105 may use data stored in the force/metric data store108 to generate or identify a predicted target force metric and one ormore predicted performance metrics given a desired performance metric orgenerated one or more predicted performance metrics from a desiredtarget force metric.

The data stored in the exercise data store 110 may store data related toone or more exercises. For example, the exercise data store 110 maystore data regarding the effect of a particular exercise on a user'sforce metric. This data may include information regarding how theparticular exercise effects the user's force metric (for example, thetotal amount the particular exercise may raise or lower the user's forcemetric) or how quickly the exercise will have the effect on the user'sforce metric (for example, if the exercise will raise the user's forcemetric by 1 point within one week or three weeks). Additionally, theexercise data store 110 may include data of the efficacy of theparticular exercise given other performance metrics of the user. Forexample, the exercise data store 110 may include data indicating thatthe particular exercise may be more effective for users having strongerupper body strength than users having weak upper bodies (or may be moreeffective for women than men, etc.). The fitness program system 105 mayuse the data of the exercise data store 110 in combination with the datafrom the force/metric data store 108 further in combination with theinformation provided by the user to generate the fitness programpersonalized for the user based on the user's desired physical metricsin view of the user's starting physical metrics.

In some embodiments, a new user 102 a using mobile device 120 a maycommunicate with the fitness program system 105 via the network 104,requesting the fitness program system 105 generate a fitness program forthe user 102 a. The fitness program system 105 may generate a fitnessprogram dedicated to the user 102 a and store the generated fitnessprogram in the fitness program data store 112. The generated fitnessprogram may comprise one or more different regimens or routines. Forexample, in some embodiments, the generated (and stored) fitness programmay include a user profile for the user 102 a and an exercise regimenfor the user 102 a. In some embodiments, more elements may be includedin the fitness program stored in the fitness program data store 112, forexample a posture profile and posture correction regimen or a real timetraining regimen, or any other element that may be associated with afitness program. The fitness program system 105 may send a profileinformation request to the user 102 a requesting information to completethe user 102 a's profile. The profile information is described below inmore detail with reference to FIG. 4. When the fitness program system105 receives the profile information from the user 102 a, the fitnessprogram system 105 may update the user profile of the generated fitnessprogram in the fitness program data store 112.

The fitness program system 105 may also request the user 102 a provideinitial fitness information. The initial fitness information may includeone or more of the user 102 s measured force metric, weight or mass, andperformance metrics in a number of fitness activities (for example, avertical jump height or a 40-yard clash time). The fitness programsystem 105 may also request the user 102 provide desired fitness goalsor targets, for example, a desired target force metric or a desiredtarget performance metric in one or more fitness activities. The fitnessprogram system 105 may use the initial fitness information provided bythe user 102 a with the desired fitness targets provided by the user 102a to generate the exercise regimen for the user 102 a's fitness program.In some embodiments, the user 102 a may provide the initial fitnessinformation automatically, and the fitness program system 105 may notsend a request to the user 102 a via the network 104 for the initialfitness information. In some embodiments, the fitness program system 105may monitor inputs of the user and/or automatically obtain theinformation. For example, this may be performed by sensors or used bythe user that may detect different states of the user and may be able todetermine when the user has begun an exercise by detecting certainmovements or certain sequence of actions within a fixed time. In someembodiments, the sensors or devices may detect the presence of the userin the vicinity of the sensors or device and automatically begincollecting data and communicating that data to the fitness programsystem 105.

In generating the fitness program, the fitness program system 105 maycommunicate with the force/metric data store 108 to identify any valuesnot provided by the user 102 a that may be useful or necessary indeveloping the fitness program (for example, force/metric data store 108may identify the user 102 a's mass or weight when provided with the user102 a's force metric and the one or more measured performance metrics oridentify the force metric when provided with the user 104's mass orweight and the one or more measured performance metrics, etc.). Thisinformation may be useful in generating the user 102 a's exerciseregimen, where specific exercises in the exercise data store 110 may bedetermined to be more or less effective based on the initial fitnessinformation of the user 102 a. Thus, as discussed above, the fitnessprogram system 105 may use information in both the force/metric datastore 108 and the exercise data store 110 to develop the exerciseregimen associated with the user 102 a's fitness program. Additionally,the fitness program system 105 may use the information of theforce/metric and exercise data stores 108 and 110, respectively, topredict a timeline or duration of the fitness program. The timeline orduration of the fitness program may represent the time over which theuser 102 a may follow the generated fitness program to progress from themeasured performance metric or force metric to the desired target forcemetric or performance metric.

An exemplary benefit of the fitness program system described herein maybe the consistency and uniformity of the provided by the force metricsand fitness program. As will be described in further detail below, theforce metric generated and used by the fitness program system 105 foreach individual user 102 a-102 c may be constant for all users, meaningthat the force metric system may be a constant baseline. For example,the user 102 a having a force metric of 75 as determined by the fitnessprogram system 105 would be capable of generating the same fitnessmetrics (for example, the same vertical jump height, the same 40-yarddash speed, the same maximum hex bar deadlift weight, etc.) as the user102 c having the force metric of 75, regardless of any difference ingender, age, height, weight, etc., between the two users 102 a and 102c. Furthermore, improving the force metric of the user 102 a by a givenamount will take the same amount of time and effort as it would take theuser 102 c to improve from the same initial force metric by the sametarget amount. Additionally, the base line established by the forcemetrics between all the users enables the fitness program system 105 tobe able to predict the amount of time required to improve betweenvarious force metrics. In some embodiments, the improvements betweeneach of the force metrics may take the same amount of time, for example,an improvement from a force metric of 75-80 may take the same amount oftime as an improvement from a force metric of 85-90. Accordingly, as thetwo users 102 a and 102 c are on the same baseline created by the forcemetric system, the fitness program system is capable of generating apredicted target completion time when provided with the user's starting,initial, or current force metric and the user's target force metric.

In some embodiments, the mobile devices 120 a-120 c may not need tocommunicate with the fitness program system 105 to generate, modify, ormonitor the user 102 a-102 c's respective fitness program. For example,the components or functionality of the fitness activity server 106, theforce/metric data store 08, the exercise data store 110, and the fitnessprogram data store 112 may be integrated into each of the mobile devices120 a-120 c. For example, each of the mobile devices 120 a-120 c mayinclude one or more data stores including the information of theforce/metric, exercise data, and fitness program data stores 108, 110,and 112, respectively. Accordingly, in some embodiments, the mobiledevice 120 a may be configured to generate, store, monitor, and modifyone or more of the user 102 a's fitness program, profile, or exerciseregimen locally without communicating with any external devices, suchthat all processes related with the personalized fitness program aremaintained within the mobile device 120 a. In some embodiments, themobile device 120 a may only use the network 104 to share information orresults with other mobile devices 120 b and 120 c or other social mediaforums or to receive updated information to be stored in theforce/metric, exercise, or fitness program data stores 108, 110, and112, respectively.

In some embodiments, the mobile devices 120 a-120 c and the fitnessprogram system 105 and any other device not shown in the FIG. 1 mayshare the functions of generating, monitoring, storing, and modifyingthe fitness programs of the users 102 a-102 c.

FIG. 2 shows a functional block diagram of an electronic device that maybe utilized in the personalized fitness program as described in relationto FIG. 1, in accordance with an exemplary embodiment. In someembodiments, the mobile devices 120 a-120 c referenced in FIG. 1 mayinclude the electronic device 200 of FIG. 2. In some embodiments, thefitness program system 105 may include electronic device 200 of FIG. 2.In some embodiments where the electronic device 200 form the mobiledevices 120 a-120 c, the electronic device 200 depicted in FIG. 2 mayinclude a fitness activity server input/output (I/O) 122. Thepersonalized fitness system client 200 may further include a third-partyintegration I/O 204, a sensor I/O 206, and a user I/O 212. Theelectronic device 200 depicted in FIG. 2 further includes a timegenerator 208. The electronic device 200 depicted in FIG. 2 furtherincludes memory 214, one or more processing units 216, and a display210. Each of the components listed above may be coupled to each other byan electrical bus 290.

The fitness activity server input/output (I/O) 202 may be configured totransmit messages and/or other information to and receive messagesand/or other information from fitness activity servers, for example, thefitness activity server 106 as referenced in FIG. 1 via the network 104.Transmitting the messages may include formatting data and values into amachine readable format and sending the message via a communicationmeans. The communication means, as described above, may include any datacommunication means such as radio, digital network packet, fiber opticpacket, or the like. Receiving the messages may include decoding datafrom the network 104, identifying one or more values included in thedecoded data, and providing the values for further processing consistentwith the features described herein, for example providing the decodeddata or values to the display 210, the memory 214, or any othercomponent of the electronic device 200. As described above, the fitnessactivity server I/O 202 may be configured for wired, wireless, or hybridinput/output.

In some embodiments, the fitness activity server I/O 202 may transmitinformation from the fitness activity server 106 of FIG. 1 comprisingprofile information, initial fitness information, desired targetperformance metrics, or other information relating to the monitoring orperformance of the fitness program and the exercise regimen therein. Forexample, the user may input a name and other personal information asprofile information via the user I/O 212, which may be communicated fromthe user I/O 212 to the fitness activity server I/O 122 via bus 290. Insome embodiments, the processing unit 216 may modify or convert theinformation input via user I/O 212 before sending the information inputto the fitness activity server I/O 202. Similarly, the sensor I/O 206 orthe time generator 208 may be configured to generate information fortransmission by the fitness activity server I/O 202. The informationgenerated by each of these components will be described in more detailbelow.

As discussed above, the fitness activity server I/O 202 may beconfigured to receive information from the fitness activity server 106of FIG. 1 comprising requests for information or information to beoutput to the user or to be used by one of the other components of theelectronic device 200. For example, the fitness activity server I/O 202may receive a request for information from the fitness activity server106. The request for information may include a request for one or moreof profile information, initial performance metrics, desired targetperformance metrics, exercise results, profile update information, orany other information that the fitness program system 105 may desire orneed from a user or the electronic device 200. For example, the fitnessprogram system 105 may send a request to the electronic device 200 viathe fitness activity server I/O 202 requesting acknowledgement of thecompletion of a scheduled exercise regimen or requesting the user updateor retest the force metric. Alternatively (or additionally), the fitnessprogram system 105 may send information to the electronic device 200 viathe fitness activity server I/O 202 for display to the user. Forexample, the fitness program system 105 may send information relating toa proposed exercise regimen that the fitness program system 105generated based on inputs provided by the user to the fitness programsystem 105, such as number of repetitions (reps) of a specific exerciseor specific target goals to reach for a specific exercise. The use ofreceived information by each of the components of the electronic device200 will be described in more detail below.

As discussed above, electronic device 200 shown in FIG. 2 includes thethird party integration I/O 204. The third party integration I/O 204 maybe configured to interact with third party devices, systems, orwebsites, such as social media websites, fitness program system partnersor retailers, and the like. These interactions may include transmittinginformation to or receiving information from the third party devices,systems, or websites. For example, the third party integration I/O 204may allow for interaction with social media websites or networks,computers, watches, media players, or other external electronic devicescapable of displaying information to the user or communicatinginformation related to the user's fitness program. In some embodiments,the interaction provided by the third party integration I/O 204 mayallow for posting information to or receiving information from websitesassociated with the fitness programs or social media websites (forexample, updating one's status, information about one's progress in thefitness program, metrics or other information relating to the fitnessactivities, or a friend list, etc.). The interactions via the thirdparty integration I/O 204 may allow for comparisons of the user'sprogress to be made with other users' progress in similar fitnessprograms or having similar target performance metrics or may allow forthe user to request assistance from another user or a trainer, etc. Thethird party integration I/O 204 may be configured for wired, wireless,or hybrid input/output.

In some embodiments, the information received by the third partyintegration I/O 204 may be communicated to one or more of the othercomponents of the electronic device 200 via the bus 290. Alternatively,the information output by the third party integration I/O 204 may besourced from one or more of the other components of the electronicdevice 200 via the bus 290. For example, when the third partyintegration I/O 204 receives information, for example, comparisoninformation from a social media website, the received information may becommunicated to the display 210 via the bus 290. In some embodiments,the received information may be first communicated from the third partyintegration I/O 204 to the one or more the processing units 216 formanipulation or formatting as necessary to be used by the othercomponents of the electronic device 200. Similarly, information sourcedfrom one or more other components of the electronic device 200 may befirst communicated to the one or more processing units 216 before beingcommunicated to the third party integration I/O 204 for outputting tothird party devices, systems, or websites.

As discussed above, electronic device 200 shown FIG. 2 includes thesensor I/O 206. The sensor I/O 206 may be configured to interact withexternal sensors that may be used while performing the exercises of theexercise regimen. For example, the external sensors with which thesensor I/O 206 may interact may include sensors built into the fitnessequipment (for example, the measurement equipment of a treadmill or anelliptical device). In some embodiments, the external sensors may bebuilt into wearable fitness equipment, for example shoe sensors, glovesensors, or devices similar to heart rate monitors. The external sensorswith which the sensor I/O 206 is configured to interact may be capableof communicating information with the sensor I/O 206 and detecting,monitoring, and communicating information relating to a current or acompleted exercise regimen to the sensor I/O 206. In some embodiments,the sensors may include a GPS, a camera, an accelerometer, or aBluetooth™ device such as a heart monitor, treadmill, ellipticaltrainer, stair machine, stationary hike, smart watch, and the like.

In some embodiments, the sensor I/O 206 may be configured to communicateinformation to the external sensors that may be used by the externalsensors to be calibrated to the user. The communicated information maybe acquired from information stored in the memory 214 or informationreceived from the fitness program system 105 via the fitness activityserver I/O 202 or received from a third party system via the third partyintegration I/O 204. For example, the sensor I/O 206 may communicate theuser's weight or length of stride or any other information that may beused by the external sensors to properly calibrate to the user so as tobe as accurate and useful as possible in generating measurements ormonitoring the users exercises. In some embodiments, the sensor I/O 206may be configured to receive measurements or other information gatheredby the external sensors. The sensor I/O 206 may then share the receivedmeasurements or information with the appropriate components of theelectronic device 200. In some embodiments, the received measurements orinformation may be first communicated to the one or more processingunits 216 for manipulation or formatting before being communicated tothe appropriate components of the electronic device 200. The third partyintegration I/O 204 may be configured for wired, wireless, or hybridinput/output.

For example, in some embodiments the sensor I/O 206 may be configured tocommunicate with external sensors to receive or input the initial userinformation. In some embodiments, the sensor I/O 206 may communicatewith shoe sensors embedded in the user's shoe(s) to receive informationto be used as the initial user information. In some embodiments, thesensor I/O 206 may receive information from the user's shoe sensorsrelating to the force generated by the foot/shoe against the floor. Forexample, when the user is performing a hex bar deadlift for the firsttime to determine the user's initial (or other) force metric, the shoesensor may generate a force or similar input corresponding to the forceapplied by the foot/shoe on the ground. This input may correspond to theweight of the deadlift, and thus may be used to determine the forcemetric for the user. In some embodiments, the user may not perform a hexbar deadlift to determine the user's initial (or other) force metric. Asdescribed above, for the hex bar deadlift to utilize 90-95% of theuser's skeletal muscle and thus be useful in determining the user'saccurate force metric, the user should perform a hex bar deadlift of aweight that the user may only lift one or two times (one or tworepetitions).

In some embodiments, the fitness program system 105 may be capable ofdetermining the user's force metric from three different jumps usinginputs or forces obtained via the shoe sensors communicating with thesensor I/O 206. For example, the user may be required to perform a squatjump, a split lunge/thrust jump, and a seated single, leg jump. Duringthe performance of each jump, ground force may be sensed by a sensorsuch as a shoe sensor included in the user's shoe or a ground force mat.The sensing device may provide the sensed data via the sensor 206 forfurther processing. Similarly to the hex bar deadlift, for the threejumps to be effective to determine the user's force metric, the usermust jump as high as possible for each of the three jumps. Each of thethree, jumps may be described in more detail below.

As previously indicated, electronic device 200 shown in FIG. 2 includesthe dine generator 208. The time generator 208 may be configured togenerate one or more timing sequences that may be used by the electronicdevice to monitor and track the user's progress during the exerciseregimens of the fitness program. For example, the time generator 208 maybe configured to generate a timer for use in measuring elapsed timeduring a running exercise or for use in stretching, etc. In someembodiments, the time generator 208 may be configured to track ormonitor a current time or date so as to provide timely and relevantupdates regarding the user's progress through the fitness program. Forexample, the time generator 208 may allow the electronic device 200 toupdate the fitness program system 105 of FIG. 1 when the user completesthe exercise regimen scheduled for a particular date on, before, orafter the target date so that so that continuous communications are notrequired between the electronic device 200 and the fitness programsystem 105. In some embodiments, one or more of the other components ofthe electronic device 200 may use a time or timer generated by the timegenerator 208 in operation.

The display 210 of the electronic device 200 may be configured todisplay information to the user. The display 210 may be configured toreceive information from one or more of the other components of theelectronic device 200. In some embodiments, the display 210 may includeat least one of an LCD display, an LED display, a MEMS display, an e-inkdisplay, or a display of any other display technology. In someembodiments, the display 210 may include other audio or visualcommunication modes, for example a speaker, a vibrating indicator, or atext display.

The user I/O 212 of the electronic device 200 may be configured toreceive inputs from the user or output information to the user separateor in addition to the information output to the user via the display210. For example, the user I/O 212 may include touchscreen display or aphysical keyboard. In some embodiments, the electronic device 200 mayinclude one or more physical buttons or rotary selectors which may beincluded in the user I/O 212. In some embodiments, the user I/O may beconfigured for wired, wireless, or hybrid wired/wireless communicationwith the electronic device 200.

As previously indicated, the electronic device 200 may include thememory 214. The memory 214 may be configured to store and retrieveinformation. The stored information may be related to one or more of theuser, the user's fitness program, the user's exercise regimen, a user'spostural regimen, or any other information that may be relevant to theuser's participation in the fitness program. In some embodiments, wherethe electronic device 200 is configured to perform other functionsbesides those relating directly to the fitness program (for example,where the electronic device 200 is a smart phone capable of being usedin conjunction with the fitness program as described above), the memorymay be configured to store information that is not relevant to thefitness program. The memory 214 may include one or a combination ofmemory devices, including Random Access Memory, nonvolatile, backupmemory (for example, programmable or Flash memories, read-only memories,etc.), networked memory (for example, cloud storage).

In an embodiment, as described above, where the electronic device 200may include the functionality and/or components of the fitness programsystem 105, the memory 214 may include the force/metric data store 108,the exercise data store 110, and/or the fitness program data store 112.Accordingly, the memory 214 may be used to generate, monitor, and modifyfitness programs for the user and may be used to store the generatedfitness programs. Any information that may be stored by the fitnessprogram system 105 in any one of the databases 108, 110, and 112 may bestored by the memory 214 when the functionality of the fitness programsystem 105 is integrated into the electronic device 200. The processingunit(s) 216 of the electronic device 200 may be configured to performthe processing functions of the fitness program system 105, for examplethe manipulation of inputs from the users 102 a-102 c and the generationof the fitness program and the manipulation of the user's force metric,performance metrics, and any other data manipulation or development ofany routines or anything related to the generated fitness program. The3^(rd) party integration I/O 204, the sensor I/O 206, the time generator208, the display 210, and the user I/O 212 may function as describedabove.

The one or more processing units 216 of the electronic device 200 may beconfigured to manipulate or convert information used by any of the othercomponents of the electronic device 200. For example, the one or moreprocessing units may be configured to receive information received bythe sensor I/O 206 or the third party integration I/O 204 and format itfor display on the display 210. For example, this may compriseperforming various calculations or conversions on the receivedinformation, for example converting a number of steps into a distancetraveled or converting a time in seconds to a format of minutes andseconds. In some embodiments, the one or more processing units 216 areconfigured to obtain instructions and data via a bus 290 from the memory214. The processing units 216 may be implemented as a programmable logicdevice that performs instruction, logic, and mathematical processing,and may be representative of one or more CPUs.

In some embodiments, the one or more processing units 216 may include anindividual or dedicated processing unit for one or more of the othercomponents of the electronic device 200. For example, the fitnessactivity server I/O 122 may include its own processing unit, while thethird party integration I/O 204 and the sensor I/O 206 also have theirown processing units, respectively. Similarly, the time generator 208and the user I/O 212 may include individual, dedicated processing units.The display 210 and the memory 214 may not include their own processingunits, but may instead benefit from the processing units of the othercomponents of the electronic display 200,

The elements of the client 200 are coupled by the bus 290. The bus 290is configured to allow the elements to exchange data and/or power. Insome implementations, parallel busses may be included, one for data andone for power.

Though not shown in FIG. 2, the electronic device 200 may include afitness program generator. The fitness program generator may include oneor more of a workout or an exercise regimen generator, a posturalregimen generator, and a real-time coaching generator. The fitnessprogram generator may be configured to receive the inputs describedabove as received by the fitness program system 105 and generate,monitor, and modify fitness programs personalized to the user. Whenintegrated into the electronic device 200, the fitness program generatormay be configured to display information on the display 210 and receiveinputs from or transmit outputs to the various I/O of the electronicdevice 200 (for example, the third party integration I/O 204, the sensorI/O 206, and the user 212). As discussed above, when the fitness programsystem 105 is integrated into the electronic device 200 (for example,into a fitness program generator), the electronic device 200 may notinclude the fitness activity server I/O 202, but may rather include anetwork I/O. The fitness program generator may be configured to receiveinputs via user inputs (for example, height, weight), via sensorsincluded in the device (for example, GPS, camera, accelerometer), viasensors in data communication with the device (for example, Bluetooth™heart monitor), or via the network 104 from service providers for thedevice (for example, cellular provider, network provider). The fitnessprogram generator uses these inputs to generate, modify, and monitor theuser's fitness program through the use of exercise regimen, posturalregimen, and real-time coaching. The fitness program generator may befurther configured to present the various received or generatedinformation to the user via the display 210.

Some embodiments of the electronic device 200 may include a physicalactivity monitor. The physical activity monitor may be configured toreceive activity information such a cardiovascular activity type,duration, and intensity. The information may be provided via user inputs(for example, height, weight), via sensors included in the device (forexample, GPS, camera, accelerometer), or via sensors in datacommunication with the device (for example, Bluetooth™ heart monitor).In some implementations, the physical activity monitor may be configuredto access a database, for example, a database of activity types used todetermine the number of calories burned by an identified activity. Thedatabases accessed by the physical activity monitor may be storedlocally in the memory 214 or externally (accessible via the network I/Oor the third party integration I/O 204). The physical activity monitor,in some implementations, is configured to provide real-time coachingduring a workout. For example, if the physical activity monitoridentifies a period of activity which exceeds a predetermined thresholdof time or is under the predetermined threshold of time, the physicalactivity monitor may be configured to display a message to the user viathe display 210 to indicate to the user of the detected situation. Insome embodiments, the physical activity monitor may be configured tocommunicate with the fitness program generator to have the fitnessprogram generator modify the fitness program in light of the user'sactual progress.

While multiple discrete elements are shown in FIG. 2, it will beappreciated that, in some implementations, the elements may be commonlyimplemented such as a combination of the fitness activity server I/O202, the third party integration I/O 204, the sensor I/O 206, and theuser I/O 212 or the time generator 208 and the one or more processingunits 216.

As described above, the electronic device 200 may be configured to runan app, and the app may be capable of interacting with the variouscomponents of the electronic device 200. The app may be any softwareprogram or similar collection of commands with or without a graphicaluser interface. The software application may be configured to operateindependently and in addition to an operating system on the electronicdevice 200 or may be configured to operate on the electronic device 200dedicated to the software application such that the electronic device200 is not used for any other purpose. As discussed above, the appoperating on the electronic device 200 may be configured to interactwith the fitness program system 105 as depicted in FIG. 1 via thevarious components of the electronic device 200 and the network 104. Insome embodiments, the software application operating on the electronicdevice 200 may include the functionality of the fitness program system105 as integrated into the electronic device 200. Accordingly, thesoftware application may be configured to generate, modify, and monitorfitness programs generated for any user associated with the softwareapplication and the electronic device 200. As described herein, thesoftware application may be configured to provide the user withaccessibility to the features of the fitness program system.

FIG. 3 shows an example of an activity that may induce the generation ofthe protein in a user's body, in accordance with an exemplaryembodiment. The fitness program generated by the fitness program maybegin with an activity that utilizes over 90% of the user's skeletalmuscle. As shown in FIG. 3A, an example of this activity may include amaximum hex bar dead lift, where the user performing the hex bar deadlift performs at his/her maximum capability. In some embodiments,performing the exercise that utilizes nearly all of the user's skeletalmuscle (more than 90% of the user's skeletal muscle) may induce the bodyto generate and release a CRTC2 protein into the user's bloodstream.Such exertion may cause the body to recruit Type 2b motors units toadapt to the stress placed on the body under the maximum effort.Additionally, lactate transporters may be recruited to up-regulatetoxins released by the muscles. In some embodiments, the CRTC2 proteinmay be induced through other activities, such as being chased by a bearor being injected into the user. The described features providepersonalized schedules which include activities that are scheduled suchthat the optimal levels of the protein may be induced or introduced intothe body by any other means. The existence of the CRTC2 protein in theuser's body during exercises of the fitness program may enhance maximalexercise capacity by 103% when compared to performance of the sameexercises without the CRTC2 protein in the user's body are present for asubsequent workout.

In some embodiments, a development of the user's force metric may bebased on an exercise that utilizes over 90% of the user's skeletalmuscle. For example, the maximum hex bar dead lift weight the user liftsmay be used to generate the user's force metric using Equation 1 below.

Force Metric=Maximum Hex Bar Dead Lift/User's Weight/(V #)*25,  (1)

where the V # is based on the height of the user. If the user is under5′9″ then the V # is 0.9. If the user is between 5′9″ and 6′X″ then V #is 1.1. If the user is greater than 6′X″ then V # is 1.3. The user'sforce metric, as described herein, may be used to calculate anddetermine the performance metrics of the user. For example, the user'sspeed can be determined based on the user's force metric, as can be theuser's power, the user's vertical jump height, or any other physicalperformance metric of the user that may be related to the user'sstrength or force generation capability.

The activity that utilizes over 90% of the user's skeletal muscle (forexample the hex bar deadlift) may invoke the central nervous system ofthe user, causing the release of the CRTC2 protein described above.However, for a user to fully benefit from a scheduled workout oractivity, the user's central nervous system should be close to itsoriginal (or unstressed) state. For example, in some embodiments, whenthe user performs the initial exercises to test the initial fitnessmetrics, the user's central nervous system may be at 100% capacity.Thus, when the initial exercise is a hex bar deadlift, the maximumweight that the user can lift for a single repetition may represent theuser's central nervous system capabilities at 100% capacity. To fullybenefit from future workouts and scheduled exercises, the user's centralnervous system should be within 95% of the original test, meaning themaximum weight the user can lift for a single repetition for the hex bardeadlift should be within 95% of the initial maximum weight lifted. Insome embodiments, the unstressed state may be determined to be within 90or 85% of the original test. In some embodiments, the unstressedthreshold may be determined to be within any other percent of theoriginal test. If the user's central nervous system is within theprescribed threshold of its unstressed state, then the fitness programmay “unlock” the remaining exercises or activities for the user toperform. For example, if the user's initial or most recent hex bardeadlift weight was 500 pounds and the user is capable of lifting 495pounds at the beginning of a workout, then the fitness program mayunlock the remaining exercises having determined that the user's centralnervous system and body have properly recovered from the previousworkout or are otherwise in proper condition to benefit from the day'sscheduled workout.

If the user's central nervous system is not within the prescribedthreshold, then the fitness program may remain “locked” as havingdetermined to not be able to benefit from the workout, thus preventingthe user from performing the scheduled activities until the fitnessprogram determines the user is in a condition to benefit from theworkout. For example, if the user's initial or most recent hex bardeadlift weight was 500 pounds but the user is unable to perform asingle lift at 450 pounds, then the fitness program may lock theremaining scheduled exercises for the day until the user's body andcentral nervous system are in condition to fully benefit from thescheduled exercises. The locking and unlocking features will bedescribed in further detail below.

FIGS. 4-13 illustrate screenshots of an app that may operate on themobile device 120 a-120 c for the users 102 a-102 c of FIG. 1. Asdescribed below, the various screenshots of the app may displayinformation generated by one of the fitness program system 105 or theapp itself, and may request input from the user for use by the fitnessprogram system 105 or the app itself. In some embodiments, any of thefunctions described below in relation to FIGS. 4-13 as being performedby the app may be performed by the fitness program system 105 usingcommunications via the network 104 of the FIG. 1 described above. Insome embodiments, any of the functions described below in relation toFIGS. 4-13 as being performed by the fitness program system 105 may beperformed by the app when the mobile device 120 a-120 c includes thevarious components and information included within the fitness programsystem 105 described above in FIG. 1. Thus, functions attributed to oneof the app or the fitness program or fitness program system 105 may beperformed by any of the app, the fitness program, or the fitness programsystem 105. The app and the mobile device 120, as described herein, maybe configured to interface with various sensors and/or other input meansto receive information regarding the user during exercise routines orduring periods when the user is inputting information. As describedherein, the app and/or the fitness program system 105 may receive theinputs and use them to monitor the user's progress and adapt, such asvia an update, the user's fitness program based on the user's progressand inputs. Thus, the fitness program system 105 and the softwareapplication may act as a virtual personal trainer capable ofpersonalizing the fitness program to the requirements of the user andcapable of providing guaranteed and predictable results. In someembodiments, the fitness program system 105 and/or the softwareapplication may be configured to determine a user's time to fatigue orother fitness information that may be useful in generating thepersonalized fitness program or providing training information.

FIG. 4 shows an example of a screenshot of a user profile screen 400 ofan app that may be run on the device of FIG. 2, in accordance with anexemplary embodiment. The user profile screen, as indicated in FIG. 4,may include personal information regarding a current user of the app.The profile screen may include a menu button 405, a profile picture 410,and a user profile information fields 415.

Though not shown in detail in this figure, the menu button 405 maytoggle the activation or display of a menu on the user profile screen400. When displayed, the menu may provide the user with controls forswitching between other user profiles that may exist in the app. Themenu may also provide access to other menu options, for example, optionsto edit any field of the user profile information fields 415 or theprofile picture 410 or navigation controls to navigate to other screensof the app. The profile picture 410 may include any picture or photo asselected by the user. The profile picture 410 may be shared with otherdevices or social media or other websites if so desired by the user. Theuser profile information fields 415 may include the fields of personalinformation about the user as stored by the software application. Theuser profile information fields 415 include a name field, an age field,a sport field, a position or event field, a height field, a weightfield, and a hex bar deadlift field. Additional fields (for example,fields associated with inputs received from external sensors, gender,etc.), fewer fields, or alternative fields may be included in the userprofile information fields 415, though not shown as such in FIG. 4. Asdescribed above, the hex bar deadlift field may be measured by externalsensors, for example shoe sensors. In some embodiments, the hex bardeadlift field may be replaced or supplemented by fields associated withthe jump heights or forces exerted as measured by the shoe sensors inrelation to the squat jump, split lunge/thrust jump, and the seatedsingle leg jump.

The user profile information fields 415 and the profile picture 410 maybe generated or selected when the user first requests that the fitnessprogram be generated. In some embodiments, the user profile informationfields 415 of the user profile screen 400 may be based on the initialinformation provided by the user. In some embodiments, the fields of theuser profile information fields 415 may be predetermined or selected bythe user regardless of the initial information that the user provides.In some embodiments, when one of the fields of the user profileinformation fields 415 is blank, the field may not be shown, while inother embodiments, blank fields may be shown on the user profile screen400. Some of the fields (for example the sport and position or eventfields) may be configured to accept multiple values. For example, theuser could list in the sports field “football” and “soccer” or any othercombination of sports as desired by the user. Similarly, the position orevent field could contain multiple positions or events, for example,“goalie” and “striker” if the selected sport(s) includes soccer. Asdescribed above, the values indicated on the user profile screen 400 maybe used by the software application in generating, monitoring, ormodifying the user's fitness program. In some embodiments, the menu mayprovide the user with the option of toggling between standard or metricvalues for the user profile information fields 415 or may provide theuser the ability to toggle the use of external sensors for automaticfeedback with the fitness program (for example, shoe sensors, clothingsensors, or any other sensor that may be associated with a fitnessactivity).

FIGS. 5A and 5B show an example of a screenshot of an initializationscreen 500 of the software application that may be active on theelectronic device 200 of FIG. 2, in accordance with an exemplaryembodiment. The initialization screen 500 presents an overview ofscrollable information (meaning the screen can scroll in at least onedirection to display more information without navigating to an alternatescreen) to the user and provides some general information to the userthat may be pertinent to the fitness program. In some embodiments, thescreens may not be scrollable. The initialization screen 500 includes amenu button 405, a current force metric 505 a represented by twoindicators, a bar graph-type indicator and a pie chart-type indicator.The initialization screen 500 also includes a target force metric 505 brepresented by a single bar graph-type indicator. The initializationscreen 500 further includes two “soft” keys: a “Set Target Force Metric”soft key 510 and a “Start Program” soft key 511. The two soft keys 510and 511 may allow the user to interact with the software applicationoperating on the node device. The initialization screen 500 may furtherinclude initial or current performance metrics field 515.

As described above in reference to FIG. 4, the menu button 405 maytoggle the display of the menu on the screen. The menu may provide theuser with options to change the values of any field of the performancemetric fields 515 or navigate to other screens of the softwareapplication. In some embodiments, the menu may provide the user withoptions to activate or deactivate external sensors, for example shoesensors in the user's shoes. Activating the external sensors may requirethe user to pair or authenticate the desired sensors with the fitnessprogram to ensure that the proper external sensors are being connectedto the fitness program. In some embodiments, the pairing orauthenticating of the external sensors with the fitness program mayrequire the user to actively confirm that the fitness program isconnecting to the correct external sensors. For example, the fitnessprogram may display identifying information for the detected externalsensors and request that the user confirm that the displayed sensor(s)should be connected and determined to be secure. In some embodiments,the fitness program may request the user place the external sensors in apairing or coupling mode where identifying information is communicatedbetween the fitness program and the external sensor for confirmation bythe user. In some embodiments, the fitness program may request the useractivate a pairing mode in both the fitness program and the externalsensor that automatically pairs any devices detected as being within thepairing mode. In some embodiments, the user may be able to save and/orname paired external sensors so that they are automatically connected assecure and/or trusted sensors when detected by the fitness program inthe future. When the external sensors are activated in the menu options,the fitness program may receive and utilize inputs from the externalsensors. When the external sensors are deactivated in the menu options,the external sensors may be ignored by the fitness program.

The current and target force metrics 505 a and 505 b may be configuredto provide a visual indicator of the current and target values of theusers force metrics 505 a and 505 b respectively. The performancemetrics field 515 may be configured to indicate initial measuredperformance metrics or current measured performance metrics. The softkey 510 may allow the user to change the target force metric asindicated by target force metric 505 b. Pressing the soft key 510 mayopen a window allowing for input of a numerical value. In someembodiments, the user may be allowed to enter the target force metricdirectly. In some other embodiments, the user may enter targetperformance metrics and the software application may calculate thetarget force metric for display on the initialization screen 500 astarget force metric 505 b based on the user entered target performancemetrics. The soft key 511 may allow the user to toggle starting andstopping of the fitness program generated above.

FIG. 6 shows an example of two screenshots of two postural evaluationscreens 600 a and 600 b of the software application that may be activeon the device of FIG. 2, in accordance with an exemplary embodiment. Thepostural evaluation screen 600 a depicts a side view of the user'sposture. The postural evaluation screen 600 a depicts a side view imageof the user's body with indicators of both a correct posture 605 a andthe user's (incorrect) posture 605 b as indicated by various joints orbody part locations with respect to each other. Similarly, posturalevaluation screen 600 b depicts a front view of the user's posture. Thepostural evaluation screen 600 b depicts a front view image of theuser's body with indicators of both a correct posture 610 a/ 615 a andthe user's incorrect posture 610 b/ 615 b indicated at differentlocations of the user's body. The posture indicated by lines 610 a and610 b is measured at the user's waist, while the posture indicated bylines 615 a and 615 b is measured at the user's shoulders. Additionally,the postural evaluation screen 600 b depicts a degree of imbalance asmeasured at the user's waist and at the user's shoulders between the“correct posture” and the “user's posture,” for example a 20-degreeimbalance between lines 610 a and 610 b (at the hips) and a 22-degreeimbalance between lines 615 a-615 b (at the shoulders). The posturescreens or portions of the software application may be used to help theuser prevent injury or improve form, which may result in furtherimprovements in the force produced by the user.

At the top of the postural evaluation screens 600 a and 600 b arenavigation buttons 620 a. The navigation buttons 620 a may include twoindividual buttons, one labeled “Screening” and the other labeled“Home.” At the bottom of the postural evaluation screens 600 a and 600 bare navigation buttons 620 b. The navigation buttons 620 b may includefour individual buttons labeled “Results,” “Front View,” “Side View,”and “Next.” The “Screening” navigation button depicted may take the userto the app's postural screening screen (not shown in these figures). Thepostural screening screen may allow the user to upload or capture apicture of the user's body in an indicated view (front, side, back,etc.). The “Home” navigation button may allow the user to navigate tothe app's home screen. In some embodiments, the app's home screen mayinclude the initialization screen 500 shown in FIG. 5 or the userprofile screen 400 shown in FIG. 4. In some embodiments, the app's homescreen may include another screen not shown in these figures. The“Results” navigation button of the navigation buttons 620 b may allowthe user to navigate to results postural evaluation results screens ofthe software application, for example postural evaluation screens 600 aand 600 b. In some embodiments, the “Results” navigation button maynavigate the user to another screen not shown in these figures thatshows results of the postural evaluation of the user. The “Front View”navigation button may allow the user to navigate to the posturalevaluation screen 600 b showing the front view of the user's body, whilethe “Side View” navigation button may allow the user to navigate to thepostural evaluation screen 600 a showing the side view of the user'sbody. The “Next” navigation button may allow the user to navigate to thenext postural evaluation screen (for example, navigate between the frontview and side view screens) or may allow the user to navigate toadditional navigation buttons.

FIG. 7 shows an example of a screenshot of a real-time coaching screen700 of the software application that may be active on the device of FIG.2, in accordance with an exemplary embodiment. The real-time coachingscreen 700 includes a menu button 405, as described above in relation toFIG. 4, and depicts two images of the user's body along with two sets ofaxes 706 a and 706 b, two lines of incidence 705 a and 705 b, one oneach of the sets of axes 706 a and 706 b, and two sets of performancemetrics 710 a and 710 b. The real-time coaching screen 700 may presentinformation generated and used by the real-time coaching function of thefitness program.

The real-time coaching function may be a function of the fitness programor software application running on the electronic device 200. Thereal-time coaching function may allow the fitness program to providereal-time guidance and support to the user while the user is using theapp. For example, the user may use the real-time coaching function tomonitor the user's progress through an exercise regimen. In someembodiments, the coaching info may not be real-time and instead may beprovided by the fitness program system 105 based on a trainer'sevaluation of the user's progress. In some embodiments, the coachinginformation may be generated based on one or more algorithms monitoringthe information of the user's progress in one or more exercises of thefitness program. For example, the coaching information for the user maybe based on the performance of the user during a running exercise andbased on the one or more algorithms. The one or more algorithms may begenerated and modified based on data sampled and analyzed over years ofcollection and testing of various users. In some embodiments, thereal-time coaching function may capture an image of the user's body andevaluate the user's form, etc., in the exercise regimen to determine ifany recommendations should be made to the user to improve the user'sperformance in or results from the exercise regimen being performed. Insome embodiments, the real-time coaching function may monitor datareceived from the external sensors (for example the shoe sensorsdiscussed above) to determine whether recommendations can be made to theuser to improve the user's performance or results. In some embodiments,the real-time coaching function may receive data from external sensors,data entered by the user, or data captured by one or more internalsensors, including a camera or audio sensor.

Regardless of how the real-time coaching function obtains the relevantinformation, the real-time coaching screen 700 shown in FIG. 7 maydisplay the user's body (or a representation thereof) on the axes 706 aThis display of the user's body may be indicative of the user's bodybefore the real-time coaching function provides recommendations to theuser, while the user's body on the axes 706 b may represent the resultspredicted to be attainable or having been measured as being attainedafter the recommendations to the user from the real-time coachingfunction. The performance metrics 710 a show the user's performancewithout the recommendations, while the performance metrics 710 b showthe user's projected performance with the recommendations implemented.The performance metrics 710 a may include the user's force metric, theuser's rate of force, the user's flight time, the user's ground contacttime, and the peak force output from the stride shown on the axes 706,all measured before the recommendation. The performance metrics 710 bmay show the projected performance metrics if the user follows thereal-time coaching recommendations, or the actual performance metrics ifthe user did follow the real-time coaching recommendations.

As shown in FIG. 7, the real-time coaching screen 700 of the softwareapplication provides the user with ample information to both determinewhether or not to follow the real-time coaching recommendation andunderstand the real-time coaching recommendation that is presented bythe software application. For example, the images displayed on axes 706b may provide sufficient instruction to the user to indicate whatchanges the user should make to attain the projected performancemetrics. As shown in FIG. 7, the user's body on axes 706 b shows that ifthe user lifts his front leg higher in the stride, the user willincrease his force metric, flight time, and peak force output whilereducing the user's rate of force and ground contact time. In someembodiments, the image on the axes 706 b may act as a link to additionalinstructions, video, or directions to the user to attain the recommendedform. In some embodiments, the fitness program system 105 or theelectronic device 200 operating the software application may beconfigured to receive an input from the external sensors or internal I/Oindicating the user's current actions and providing informationregarding the user's metrics. For example, the peripheral electronicdevice 122 being a shoe having the internal shoe sensors (for example,located in one or more of the midfoot, heel, toes, arch, etc.) tomeasure forces exerted by the foot and impacts felt by the foot may beable to provide the time between when the user's foot leaves the groundand impacts the ground while the user is taking steps. Additionally, theperipheral device 122 shoe may be configured to measure a height of theshoe. This information may be communicated to the mobile device 120(corresponding to the electronic device 200), which may be configured todetermine the user's current movements or communicate the receivedinformation to the fitness program system 105 that may determine theuser's current movements or range of motion from the receivedinformation. The mobile device 120 or the fitness program system 105 maythen generate recommendations to improve the user's movements or forcesgenerated. The recommendations may take into account the user's currentinformation compared with identified improved metrics and initialinformation (for example, the user's height or length of legs, etc.),and tell the user what actions are needed to generate the improvedmetrics. Thus, the mobile device 120 or the fitness program system 105may instruct the user to raise his knee a few inches to generateadditional peak force output over the original movements. Though notshown on this screen, the real-time coaching screen 700 may beconfigured to provide real-time coaching for various activities orsports (for example, running, throwing, kicking, swinging, swimming,cycling, etc.). In some embodiments, the real-time coaching screen 700may provide information or recommendations in response to issuesidentified by the user, for example specific pains while exercising orspecific difficulties during the exercise regimen. The real-timecoaching information displayed via the user's body on the different axesmay only be representative of the recommendations and may not be exactwith regards to the steps to be performed.

FIG. 8 shows an example of a screenshot of a real time data screen 800of the software application that may be active on the device of FIG. 2,in accordance with an exemplary embodiment. The real-time data screen800 includes a menu button 405, as described above in relation to FIG.4, and depicts two images of the user's body along with two data points805 a and 805 b.

The real-time data screen 800 may be configured to display real-timedata as obtained by the app. For example, the real-time data may beobtained by the electronic device 200 communications with externalsensors, for example sensors in the user's shoes or clothing.Alternatively, in some embodiments the real-time data may be obtained bythe electronic device 200 capturing of an image of the user andanalyzing the image or receiving data input by the user in real-time.The real-time data screen 800 may be useful in the fitness program'sdevelopment of the real-time coaching screen 700, as discussed above inrelation to FIG. 7, or in the modification, tracking, or monitoring ofthe fitness program.

The information and images shown on the real-time data screen 800 mayrepresent any information related to the fitness program and are notlimited to those shown in FIG. 8. In some embodiments, the real-timedata screen 800 may display the forces generated by the user in any ofthe three jumps that may be used to determine the user's force metric:the squat jump (shown in FIG. 8), the split lunge/thrust jump, and theseated single leg jump. In some embodiments, the real-time data screen800 for the squat jump may include the power and quantity of forcegenerated by the user during the jump and be able to determine theforces generated by each leg (as shown in FIG. 8). Thus, the squat jumpmay be allow the fitness program to determine any left/right imbalancesin the user's legs. The split lunge/thrust jump may provide the fitnessprogram with the single leg power and quantity of force generated by theback side (muscles on the back side of the leg) of the user's legs.Similarly, the seated single leg jump may test the power or forcegenerated by the front side (muscles on the front side of the leg) ofthe user's legs. The split lunge/thrust jump and the seated single legjump may allow the fitness program to determine any front/backimbalances in the user's legs.

As shown in FIG. 8, the data point 805 a shown may represent the forcegenerated by the user's right leg, while the data point 805 b mayrepresent the force generated by the user's left leg. As can be seen,the user's legs each output different forces (342.6 pounds of peak forcefrom the right leg and 318.8 pounds of peak force from the left leg) foran activity that may be expected to generate the same output from eachleg (for example, a vertical jump). Accordingly, the app may identifythe discrepancy between the force outputs of each leg and indicate thediscrepancy to the user.

In some embodiments, based on the identified discrepancy, the app mayautomatically use the real-time coaching screen 700 to presentrecommendations to the user to reduce the discrepancy between the forceoutputs of the legs, for example, generating stretches or exercises tobring the force outputs of the left and right legs into closer symmetry.In some embodiments, the fitness program system may update the generatedfitness program to accommodate the recommended stretches or exercisesand so as to schedule the new recommended activities into the user'sfitness program. In some embodiments, the app may request the user'sinput as to whether or not the user wants the fitness program togenerate a recommendation to reduce the discrepancy or ignore thediscrepancy. In some embodiments, when the user incorporates exercisesor activities to reduce any front/back or left/right or any otherimbalances, the real-time data screen 800 may include informationregarding the scheduled activities or exercises that will improve thedetected imbalance.

While the exemplary embodiment shown in FIG. 8 depicts the userperforming a jump with data pertaining to the forces generated by eachleg, other embodiments may display a height of each leg in a jump, astride length taken by each leg during a run, a force exerted by eacharm in a weight lift or swim stroke, or a force exerted by each arm in aswing, or any other physical metrics. Other embodiments may displayreal-dine data received by the electronic device 200 from externalsensors, the user, or the electronic device 200 in any fitness activitythe user may perform. In some embodiments, the user may use thereal-time data screen 800 and the real-time coaching screen 700 forphysical activities that are not part of the fitness program in whichthe user may be participating.

FIG. 9 shows an example of a screenshot of a calculator (or targetcalculation) screen 900 of the software application that may be activeon the device of FIG. 2, in accordance with an exemplary embodiment. Thecalculator screen 900 includes the menu button 405 as described above inrelation to FIG. 4 and various fields or indicators. The included fieldsand indicators include a sport indicator 905, a user name field 906, acurrent performance metrics fields 910, a target performance metricsfields 915, and a target time field 920. Additionally, the calculatorscreen includes a screen identifier “Calculator” so that the user knowswhat screen he is currently viewing. In some embodiments, the calculatorscreen may be identified with any other identifier describing thefunction of the screen.

The sport indicator 905 may correspond to the sport information enteredby the user in reference to the user profile screen 400 in the userprofile information fields 415. In embodiments where the user enteredmore than one sport into the user profile information fields 415,multiple calculator screens 900 may be generated by the softwareapplication, for example one for each sport or calculator screens 900with information from multiple sports combined on the single screen (forexample, a scrollable screen, or a screen with various tabs, etc.).Multiple calculator screens 900 may be used because each sport orposition or event may have different performance metrics that areimportant to identify and improve. For example, football, as shown inFIG. 9, may focus on a 40 yard dash time, number of strides taken in the40 yard dash, and a vertical jump height, while baseball may focus on a60 yard dash time, a maximum throwing velocity, and a vertical jumpheight, and running may focus on a 6 minute vV02MAX test, a 6 minutedistance test, and a marathon time. In some embodiments, other sports(e.g., volleyball, track and field events, distance running, surfing,paddle boarding, lacrosse, baseball, basketball, ice hockey, fieldhockey, polo, gymnastics, golf, jai-alai, tennis, curling, soccer,racquet ball, squash, cycling, sport fishing, Highland gaming, martialarts, football, water skiing, snow skiing, snow boarding, wrestling,swimming, figure skating, or other physical activity) may focus on thesame or other performance metrics, or the sports identified above mayfocus on other performance metrics. In some embodiments, the user mayselect what performance metrics to use on the calculator screen 900.

Thus, as described above, the fields or metrics shown in both thecurrent performance metrics fields 910 and the target performancemetrics fields 915 may vary with the sport or the selection of the user.However, the calculator screen 900 will show a selection of performancemetrics with both the current performance metrics fields 910 and thetarget performance metrics fields 915. The selection of performancemetrics may be the same in each of the current and target performancemetrics fields 910 and 915, respectively, so as to allow the user to beable to directly compare pre-fitness program metrics and post-fitnessprogram metrics, though the performance metrics in the current andtarget performance metrics fields 910 and 915 do not need to be thesame.

The values in the target performance metrics fields 915 may be usereditable or calculated by the software application. For example, theuser may input a target force metric, and the software application maycalculate and determine the target 40 yard dash time, the number ofstrides in the 40 yard dash, and the vertical jump height. As shown incalculator screen 900 b, the user may enter a desired target 40 yarddash time as indicated by 911, and the app may calculate the remainingvalues of the target performance metrics fields 915 based on the desiredtarget time. These calculations may be made based on the desired userinput metric in comparison to the corresponding current performancemetric. For example, as shown in FIG. 9, the user input desired target40 yard dash time of 4.61 s in the target performance metrics fields 915may be compared, by the software application, with the current 40 yarddash time of 5.09 s in the current performance metrics fields 910. Theapp or the fitness program system 105, knowing the user profileinformation as entered by the user for the user profile screen 400, maydetermine the target force metric that would be used to attain the userdesired 40 yard dash time, and use that determined target force metricto determine the remaining target performance metrics fields 915,regardless of which target performance metric field the user inputs.This allows the user to choose a target performance metric for any ofthe available performance metrics.

As discussed above, any of the values in the current performance,metrics fields 910 or the target performance metrics fields 915 may becalculated or computed given either the user's force metric or one ofthe other performance metrics fields. This shows another exemplarybenefit of the invention described herein. The fitness program may beconfigured to generate the user's force metric based on the user profileinformation 405 described above in relation to FIG. 4 given anyperformance, metric. For example, given the user's current 40-yard dashtime, the fitness program may generate the user's force metric. Thefitness program may then use the generated force metric to determine orcalculate predicted values for any of the remaining target performancemetrics fields 915. These predicted values may be calculated using theequations. These equations allow the fitness program to be over 99%accurate in predicting the user's physical metrics given the user'sforce metric and over 99% accurate in predicting the amount of timenecessary to improve the user's force metric, as will be discussed infurther detail below.

Additionally, the user name field 906 may be generated from the userprofile information fields 415 and may identify the user whosecalculator screen 900 is displayed. The target time field 920 mayinclude the predicted amount of time the fitness program will use toreach the target performance metrics 915. The target time field 920 maynot be editable by the user, but rather may be computed or calculated bythe app. In some embodiments, the target time field 920 may be editableby the user, and the values of the target performance metrics fields 920may be adjusted by the app to show the maximum performance metrics thatare attainable in the user specified target time field.

FIG. 10 shows an example of a screenshot of a fitness program overviewscreen 1000 of the software application that may be active on theelectronic device 200 of FIG. 2, in accordance with an exemplaryembodiment. The overview screen 1000 may include a label indicating itis the overview screen. The overview screen 1000 may show an overview ofthe time the fitness program may use to reach the target performancemetrics as indicated in the calculator screens 900 a and 900 b. Theoverview screen 1000 includes a menu button 405 as described above inreference to FIG. 4. The overview screen 1000 also includes the targettime field 920. Below the target time field 920, the overview screen1000 shows a breakdown of the target time into subfields. For thefitness program generated for the user shown in FIG. 10, a target timebreakdown 1005 is shown. The target dine breakdown 1005 includes fivesubfields: a three week strength phase 1010, a one week deload phase1011, a three week force metric phase 1012, another one week deloadphase 1013, and a final three week force metric phase 1014.

Between the three week force metric phase 1012 and the one week deloadphase 1013 may be a retest phase where the user may retest their forcemetric by way of the hex bar dead lift at a maximum weight. The retestphase may represent a self-evaluation where the user re-evaluates theirforce metric. In some embodiments, the user may re-evaluate the forcemetric every day of the fitness program, or once every week of thefitness program, or at some other interval. The re-evaluated forcemetrics may be used by the fitness program system 105 to update ormodify the user's fitness program, which may include generating newexercise regimens or a new target time for completion of the fitnessprogram.

In some embodiments, the user may be unable to edit any of the values onthe overview screen 1000. In some embodiments, the user may be able toedit any of the values on the overview screen 1000, which may result inthe app modifying the remaining values. In some embodiments, thesoftware application may provide a warning or indicator to the user ifthe user tries to change a value on the overview screen 1000 that is notrealistic or possible. In some embodiments, the number of weeks or thephases shown in the target time breakdown 1005 may vary based on thetype of sport or position selected by the user in relation to the userprofile information fields 415 of the user profile screen 400 of FIG. 4.In some embodiments, more or fewer subfields of the target timebreakdown 1005 than shown in FIG. 10 may exist on the fitness programoverview screen 1000.

The target time of the target time field 920 may be broken down intomore or fewer subfields than those shown on the overview screen 1000. Insome embodiments, the target time of the overview screen 1000 may bebroken down by number of days or any other increment of time. In someembodiments, where delays have been introduced or where other factorsmay have changed the predicted target time field 920, the change fromthe initial predicted target time to the current predicted target timemay be displayed for the user.

FIG. 11 shows an example of a screenshot of a training schedule screen1100 of the app that may be active on the device of FIG. 2, inaccordance with an exemplary embodiment. The training schedule screen1100 may include a label indicating to the user that the trainingschedule screen is being viewed. The training schedule screen 1100 alsoincludes a menu button 405 as described in reference to FIG. 4 above.The training schedule screen 1100 also includes a view of a calendar1105. In some embodiments, the calendar 1105 displayed may be a weeklongcalendar (as shown in FIG. 11), a month long calendar, a single daycalendar, or a calendar of any other period of time. The trainingschedule screen 1100 may also allow the user to select a day (or anothersubset of time) 1106 from the displayed calendar 1105 for which asummary of the schedule exercise regimen for the selected subset of time1106 is displayed below. Below the displayed calendar 1105, adescription 1110 of the calendar 1105 displayed on the training schedulescreen is shown, below which is shown an exercise regimen overview 1115and the revised target time field 1120. Next to the exercise regimenoverview 1115 are completion boxes 1125, 1126, and 1127.

As shown in FIG. 11, the calendar 1105 may represent a week from October19 to October 25. Additionally, FIG. 11 shows the subset of time 1106selected as Wednesday, October 22. Additionally, the description 1110may indicate that the day 1106 is Wednesday, October 22, which is partof the “Force Number Phase 1—Week 1,” which may correspond to the firstweek of the three week force metric phase 1012 of FIG. 10. In FIG. 11,the exercise regimen overview 1115 shown below the description 1110 maycorrespond to one or more of the subfields displayed in FIG. 10. Forexample, the exercise regimen overview 1115 shown includes an overviewincluding a “Dynamic Warm Up” set of exercises, a “Speed” set ofexercises, and a “Weightlifting” set of exercises.

The completion boxes 1125, 1126, and 1127 are used to acknowledge thecompletion of the exercises of the exercise regimen overview 1115. Forexample, if the “Dynamic Warmup” completion box 1125 is checked (asshown in the FIG. 11), then the app and/or the fitness program knows theuser has completed all of the exercises associated with that exerciseset. Similarly, the check in the “Speed” completion box 1126 is checked,the app or the fitness program knows the user has completed all of theexercises associated with that exercise set. However, when the“Weightlifting” completion box 1127 is not checked, the app or thefitness program may assume that the user has not completed all of theexercises associated with that exercise set and may automaticallygenerate a revised target time to completion to place in the revisedtarget time field 1120. Thus, as shown in FIG. 11, the revised targettime field 1120 shows 12 weeks until the target metrics will be reached,as compared to the 11 weeks indicated in the target time field 920 asshown in FIGS. 9 and 10.

Alternatively, the completion boxes 1125, 1126, and 1127 (or similarboxes) may indicate the user's ability to proceed with the indicatedexercises. As discussed above, the fitness program may be configured tolock or unlock exercises or activities based on a determination that theuser's body (for example, the central nervous system) is not in acondition to fully benefit from the scheduled exercises. Thus, thecompletion boxes 1125, 1126, and 1127 (or similar boxes) may indicatewhether or not a set of exercises is locked or unlocked. A check narkmay indicate that the exercises or activities are accessible, while a“X” may indicate that exercises or activities are locked. When one ormore exercises or activities are locked and cannot be performed, thetarget time field 1120 may be updated to reflect the change. Asdescribed above, the fitness program may lock or unlock exercises orother activities based on the user's performance of an exercise on thegiven day. Thus, as shown in FIG. 11 by the “X” in the completion box1127, the fitness program may have locked the “Weightlifting” exercisesbased on the user's performance of the hex bar deadlift in the warm upof the weightlifting exercise. As described above, if the user is unableto lift within 90-100% of his maximum hex bar deadlift weight, then thefitness program may determine that the user's body (for example, centralnervous system) is not ready for the next force metric improvingworkout. This may be caused by the user's body not being sufficientlyrested or having not recovered from the previous workout or based onother stresses that may be placed on the user's body outside of thefitness program (for example, stresses from children or work oraccidents, etc.). Thus, the fitness program may be personalized down tothe daily requirements and capabilities of the user, accounting for anystressful life experiences, etc., that the user may face.

FIG. 12 shows an example of a screenshot of the training schedule screen1100 of FIG. 11 with further screenshots of the screens associated witheach of the indicated scheduled activities, in accordance with anexemplary embodiment. The training schedule screen 1100 shown in FIG. 12includes all of the components described above in relation to FIG. 11.Additionally, FIG. 12 provides the user the ability to select theexercises summarized in the exercise regimen overview 1115 to view moredetailed information regarding those summaries. For example, as shown inFIG. 12, when the user selects the “Dynamic Warmup” label, a window maybe displayed showing the user the exercises contained in that set ofexercises. As shown in window 1205, the set of exercises may include oneor more exercises to be performed by the user according to instructionsprovided within the window.

In some embodiments, the selection of one of the sets of exercises fromthe exercise regimen overview 1115 may navigate the software applicationto another screen (not shown in this figure). Each of the sets ofexercises from the exercise regimen overview 1115 may have a dedicatedwindow or screen, or may be accessible on a single window or screenusing other navigation buttons. Similarly to window 1205, windows 1210and 1215 may display the exercises contained in the “Speed” set ofexercises and the “Weightlifting” exercises, respectively when the“Speed” and “Weightlifting” labels are selected by the user. In each ofthese windows 1205, 1210, and 1215, the user may have the ability toselect the individual exercises for instructions or details on how tocomplete the exercise (not shown in this figure). Additionally, thewindows may include information regarding the number of repetitions foreach exercise or the amount of time to spend doing each exercise. Insome embodiments, the fitness program system 105 may determine thenumber of repetitions for each exercise based on the user's initialperformance metric, the target performance metrics, and storedinformation in the exercise data store 110. The stored information mayinclude details about how much each repetition may impact the user'sperformance metrics and may be used by the fitness program system 105 todetermine how many repetitions of various exercises may be used to reachthe user's target performance metrics. The fitness program may alsodetermine the number of repetitions for each exercise for the user toperform. Additionally, the user may have the ability to mark each of theindividual exercises of the windows 1205, 1210, and 1215 as completed,which may be transferred to the checkboxes 1125, 1126, and 1127 on theexercise regimen overview 1115, such that the app or the fitness programmay automatically update the target time field 920 or 1120 based on theuser's completion of individual exercises of the screens 1205, 1210 and1215.

Though not shown in this figure, each of the Dynamic Warm Up, Speed,and/or Weightlifting sets of exercises may begin with one or moreexercises intended to help determine if the user is in a condition tofully benefit from the set of exercises. For example, if the user'saerobic system has not recovered from a previous workout or if the userhas a chest cold, then the speed exercises may be determined to not beuseful as the user will not benefit from them at that given moment.Similarly, as discussed above, a user's central nervous system may notbe able to benefit from the weightlifting exercises. Thus, FIG. 12 mayprovide a display of details of the exercises being locked or unlocked.

FIGS. 13A and 13B show an example of a screenshot of a progress screen1300 of the software application that may be active on the device ofFIG. 2, in accordance with an exemplary embodiment. The progress screen1300 may include many of the same elements as the initialization screen500 described above in reference to FIGS. 5A and 5B; additionally, asnoted with reference to FIGS. 5A and 5B above, the progress screen 1300may be scrollable. In addition to the menu button 405, the current forcemetric 505 a represented by the two indicators, the bar graph-typeindicator and the pie chart-type indicator, and the target force metric505 b, represented by the bar-graph-type indicator, and the currentperformance metrics field 515, the progress screen 1300 may also includea message 1305 to the user and options 1310 to share the user's results.

The elements displayed on the progress screen 1300 that are identical tothe elements displayed on the initialization screen 500 will not bedescribed again here. The message 1305 to the user may be customized bythe software application according to the user's progress in the fitnessprogram. For example, as shown in FIG. 13, the user has increased thecurrent force metric from “74” as shown in FIG. 5A to “80” as shown inFIG. 13A. Accordingly, as the user has increased the force metric, themessage 1305 may indicate the increase or improvement of the user'sforce metric by displaying “Your Stats Have Improved!” Alternatively, ifthe user's force metric has declined or stayed the same, the message1305 may indicate a decline or a plateau. Additionally, the options 1310may provide the user the ability to share the results shown on theprogress screen 1300. For example, the options 1310 may include buttonsto share the user's progress via social media websites or applications(for example, Facebook™, Twitter™, Instagram™, or Pinterest™, etc.) orto e-mail or text message the results to a recipient of the user'schoosing. In some embodiments, the options 1310 may include anyavailable method of sharing information with other users, and mayutilize the third party integration I/O 204 as referenced in FIG. 2. Thevalues in the current performance metrics field 515 may match the valuesfrom the target performance metrics field 915 of FIG. 9 with up to 99.7%accuracy, thanks to the calculations and equations described above.

FIG. 14 shows an example of a predictive application of the personalizedfitness system described in relation to FIG. 1, in accordance with anexemplary embodiment. As described above, the fitness program system 105described herein generates a personalized fitness program for a userbased on the user's initial user information and initial performancemetrics. These generated fitness programs may be up to 99.7% accurate inpredicting the user's performance metrics given the initial userinformation and the user's force metric. The initial performance metricsmay include a user's weight, a user's times for specific distance runs,a user's maximum hex bar dead lift weight, or a user's maximum developedforce as measured by shoe or other clothing sensors, among otherinformation. Using these initial values and information, the fitnessprogram system may generate the personalized fitness program to allowthe user to attain a user selected target result. For example, if theuser's initial 40 yard dash time is 5.9 seconds, and the user desires toattain a 40 yard dash time of 4.5 seconds, the fitness program systemwill generate the personalized fitness program to allow the user toreach the desired goal. The fitness program system 105 will determinethe proper exercises to include in the generated exercise regimen toensure the user attains the goal. In making this determination, thefitness program system 105 may analyze stored data of other users'capabilities at given performance metrics and initial values andinformation and data acquired by the fitness program system through thesoftware application running on the user's mobile device 120, forexample an app on the user's phone, a program on the user's computer, oran operating system of a dedicated fitness program device,

One exemplary benefit of the software application and the fitnessprogram system is the ability to predict outcomes given the users'force. For example, as shown in FIG. 14, given the force metrics of fiveathletes, the fitness program system 105 can predict the physicalcapabilities of the athletes with such accuracy that it may be able toplace the five athletes at different, calculated distances on the tracksuch that the five athletes will all cross the finish line at the sametime. The fitness program system 105 is 99.7% accurate in thesecalculations and determinations, and may place the five athletes atspecific locations with a specificity of 1 cm. As shown in FIG. 14,athlete G may have the lowest force metric, with athlete E having aslightly larger force metric than athlete G but a slightly smaller forcemetric than athlete C. Athlete C may have a smaller force metric thanathlete A, who has a smaller force metric than athlete B. From viewingFIG. 14, we see that athlete G has the shortest distance to run being inthe most inside lane of the track depicted. Using the equationsdescribed above, the fitness program may be able to determine, given theathlete G's force metric and either the distance to run to the finishline, the amount of time it will take athlete G to reach the finishline. Then this time may be used, in conjunction with the force numberof athlete E, to determine at what distance from the finish line theathlete E should be placed to reach the finish line at the same time asathlete G. Similarly, the starting positions for the athletes C, A, andB may each be determined.

FIG. 15 shows a message diagram 1500 of an example of communicationmessages that may take sent between components of the network diagram100 of FIG. 1, in accordance with an exemplary embodiment. The messagediagram 1500 depicts the mobile device 120 and the fitness programsystem 105, comprising the fitness program server 106, thefitness/metric data store 108, the exercise data store 110, and thefitness program data store 112 (though not shown in this figure) and thecommunication messages that may take place between each of the depictedcomponents. Additionally, the message diagram 1500 depicts actions thatare performed by the components or messages or inputs that are receivedby the components from external components.

The message diagram 1500 may begin with the mobile device 120 receivinga message 1502 comprising user inputs from a user. As described above,in some embodiments this may include the mobile device 120 receiving theuser's personal information and measured initial performance metrics andforce metric. In some embodiments, the user inputs may include inputsfrom one or more sensors. The mobile device 120 may receive the userinputs and communicate them to the fitness program system 105 via thenetwork 104 (as referenced in FIG. 1) as message 1504. After receivingmessage 1504 comprising the user inputs, the fitness program system 105may use the inputs received to generate a fitness program for the user,which may include internal message(s) 1506. In some embodiments,generating the fitness program may initially comprise generating theuser's force metric and the user profile for the fitness for thegenerated fitness program. The process of generating the fitness programmay include utilizing information stored in the force/metric data store108, the exercise data store 110, and/or the fitness program data store112.

After the user's fitness program is generated, the fitness programsystem 105 may send to the mobile device 120 the user's force metric andthe generated profile information via message 1508 for display orcommunication to the user. Then the mobile device 120 may receive theuser's target metrics via a message 1510, which the mobile device 120may communicate to the fitness program system 105 via message 1512. Thetarget inputs may include the desired physical metrics the user hopes toachieve. The fitness program system may use the target inputs receivedfrom the mobile device 120 combined with the user inputs received in themessage 1504 and the information stored in the force/metric data store108, the exercise data store 110, and the fitness program data store 112to generate an exercise regimen associated with the user's fitnessprogram via message 1514.

Once the exercise regimen is generated, the fitness program system 105may send the exercise regimen, via message 1516, to the mobile device120 for display to the user who is participating in the fitness program.While or after the user performs the exercise regimen, performancemetrics associated with the user and the exercise regimen may be inputto the mobile device 120 via message 1518. The performance metrics mayinclude the times, weights, etc., that the user attained in their latestself-evaluation or in the latest exercises performed. The mobile device120 may communicate these metrics to the fitness program system 105 viamessage 1520. The fitness program system 105 may use the exerciseregimen metrics to update the previously generated fitness program, forexample updating a target completion date or updating the exerciseregimen in light of the completed exercises, for example via internalmessages 1522. After updating the fitness program, the fitness programsystem 105 may communicate the updated fitness program to the mobiledevice 120 via message 1524, which may display or otherwise communicatethe updated fitness program to the user. In some embodiments, more orfewer messages may be used in the message diagram 1500 than shown hereor more components may participate directly in the message diagram 1500though not shown in FIG. 15.

FIG. 16 shows a flow chart of a method 1600 of generating a fitnessprogram as described in relation to FIG. 1 in accordance with anexemplary embodiment. The method 1600 of FIG. 16 may be implemented bythe fitness program system described above, for example the electronicdevice 200 when configured to operate as the fitness program system. Themethod 1600 may start at block 1605. Block 1605 may include receivinginitial inputs from a user via a user input, for example, a keyboard, amouse, or a touchscreen or like device. The initial inputs may includepersonal information and user goals or target metrics. In someembodiments, the initial inputs may include user profile typeinformation, including information regarding the gender, height, weight,and the sport in which the user participates. After receiving the userinputs at block 1605, the method 1600 may progress to block 1610.

At block 1610, the method may include receiving inputs from one or moresensors, wherein at least one of the inputs from the one or more sensorsinclude initial metrics of the user. The inputs from the one or moresensors may include information or metrics from a shoe sensor or someother sensor that may be worn or embedded into the user's clothes orexercise equipment. In some embodiments, these inputs may includeinitial metrics of the user, for example the user's max hex bar deadlift weight or the user's speed in a 40 yard dash, among others. Afterreceiving the input from the sensors, the method 1600 may proceed toblock 1615.

At block 1615, the method 1600 may include generating a fitness routinebased on the initial inputs from the user and the inputs from the one ormore sensors, wherein the fitness routine includes one or more exercisesselected for the generated fitness routine based on at least one of thepersonal information, goals, initial metrics and target metrics of theuser. Generating the fitness routine may also include generating aschedule according to which the user may perform the selected one ormore exercises. Additional details regarding the generating of thefitness routine are described in relation to FIG. 17 below. Anadditional step of block 1615 may comprise determine the predictedtarget completion time. After generating the fitness routine, the method1600 may proceed to block 1620.

At block 1620, the method 1600 receives second inputs from the one ormore sensors, the second inputs indicative of the user's performance ofone or more of the exercises of the generated fitness routine andcomprising updated user metrics. In some embodiments, the second inputsmay be indicative of the user having engaged in an exercise of thescheduled fitness program or in an unscheduled exercise. The sensors mayprovide metrics regarding the user's performance of the exercise to thefitness program. Based on the inputs from these sensors, the fitnessprogram system may revise or modify the fitness program at block 1625.Block 1625 includes revising the fitness program based on the receivedsecond inputs, wherein the revised fitness program includes one or moremodified exercises or a modified schedule. Revising the fitness programmay include at least one of modifying at least one of the scheduleexercises of the fitness program or the schedule according to which theis to perform the exercises or activities.

FIG. 17 shows a flow chart providing further details of a method 1700for generating the fitness program described in method 1600 of FIG. 16,in accordance with an exemplary embodiment. The method 1700 of FIG. 17may be implemented by the fitness program system described above, forexample the electronic device 200 when configured to operate as thefitness program system 105. The method 1700 may start at block 1705.Block 1705 may include receiving the initial inputs from the user viathe user input, for example, a keyboard, a mouse, or a touchscreen orlike device (as described by block 1605 of FIG. 16 above). The initialinputs may include personal information and user goals or targetmetrics. The initial inputs may also include the user's sport and/orposition played in the sport, which may be used to select specificexercises and activities for the fitness program to be generated. Asdescribed above, in some embodiments, the initial inputs may includeuser profile type information, including information regarding thegender, height, weight, and the sport and/or position in which the userparticipates. In some embodiments, the initial inputs may compriseinformation received from the peripheral electronic devices 122, forexample the shoe sensors. This received information may be used todetermine the user's force metric (as described above). Receiving theinputs may also comprise determining the desired improvement of theuser's force metric by comparing the target force metric and the initialforce metric. After receiving the user inputs (and determining the forcemetric improvement) at block 1705, the method 1700 may proceed to block1710.

At block 1710, the method 1700 may generate a fitness program comprisingat least one weight exercise that utilizes at least 90% of the user'sskeletal muscle. For example, as described above, this weight exercisemay comprise a hex bar deadlift at the user's maximum weight. Asdescribed above, the user's maximum hex bar deadlift weight may comprisethe weight that the user can lift for only one or two repetitions(reps). Thus, the generated fitness program may include the maximum hexbar deadlift lifting exercise at the user's maximum weight. Such anexercise may serve the purpose of testing the user's force metric forthat day and also help to improve the user's strength and ability tolift heavier loads. In some embodiments, other exercise that utilizes atleast 90% of the user's skeletal muscle may be used (for example, amachine that targets the user's skeletal muscle or that may help theuser utilize at least 90% of the skeletal muscle). After the fitnessprogram is generated with the at least one weight exercise, then method1700 progresses to block 1715.

At block 1715, the method 1700 may identify one or more demands placedon the user's body based on the user's sport and position, stresses, andimbalances of the user's body. For example, as discussed above, themethod 1700 may identify that the user's right and left legs generatedifferent forces. In some embodiment, such an imbalance may lead to orincrease risk of injury, for example an ACL or similar injury.Additionally, demands on the user's body may change based on the sportor position of the user. For example, a baseball player that is acatcher may have different demands placed on the body than a pitcher.The different demands and stresses may increase different risks ofinjury or may provide for different potential benefits for a user. Oncethe one or more demands or stresses or imbalances of the user's body areidentified, the method 1700 proceeds to block 1720.

At block 1720, the method 1700 identifies and selects one or moreexercises from a plurality of exercises of the exercise data store 110of FIG. 1 that may be used to help the user manage the identifieddemands, stresses, or imbalances from block 1715. In some embodiments,this may comprise the dynamic warm up or speed exercises discussed inrelation to FIGS. 11 and 12. In some embodiments, the identified andselected exercises may comprise the stretches as discussed in referenceto FIG. 6 or exercises to correct imbalances in the force production ofeach leg or the front/back of each leg, as referenced in FIG. 8. If morethan one demand, stress, or imbalance is identified in the user's body,then the method 1700 may identify and select one or more exercisestargeting each of the one or more demands, stresses, or imbalances. Oncethe exercises are identified and selected, the method 1700 proceeds toblock 1725.

At block 1725, the method 1700 determines a number of repetitions orloads for the one or more identified and selected exercises based on theinitial inputs from the suer and the identified one or more demands,stresses, and imbalances of the user's body. For example, the method1700 may determine that the user should perform the hex bar deadlift ata weight of 350 pounds for four sets of 8 reps each, as shown in FIG.12. In some embodiments, to correct an imbalance in the user's stature,different stretches may be prescribed, or to correct imbalances inforces generated by different muscles, certain muscles may be targetedfor one or more additional exercises to equalize the generated forces.Once the number of repetitions for each exercise is determined, themethod 1700 generating the fitness program will be complete.

FIG. 18 shows a flow chart providing details of a method 1800 forupdating or modifying the fitness program described in methods 1600 ofFIG. 16 and 1700 of FIG. 17, in accordance with an exemplary embodiment.The method 1800 of FIG. 18 may be implemented by the fitness programsystem described above, for example the electronic device 200 whenconfigured to operate as the fitness program system 105. The method 1800may start at block 1805. At block 1805, the method 1800 may present theuser with the initial exercise or activity of the day as determined bythe generated fitness program for the user to perform. As describedabove, for a weightlifting exercise routine, the initial exercise may bea maximum hex bar deadlift to ensure the body is in condition to benefitfrom the scheduled workout, while for speed or endurance exerciseroutine, the initial exercise may be a warmup run. After presenting theuser with the initial exercise, the method 1800 proceeds to block 1810.

At block 1810, the method 1800 receives inputs from the user orperipheral sensor electronics to update the generated fitness program.The inputs received at block 1810 may comprise performance metrics ofthe user for the initial exercise or activity. These inputs may allowthe method 1800 to determine if the user's body is capable of fullybenefitting from the scheduled exercises and activities based on theuser's performance of the initial exercise or activity at block 1815. Asdiscussed above, this determination at block 1815 may comprise comparingthe user's results from the initial exercise or activity with previousresults from the same or similar exercises (for example the maximumweight for the hex bar deadlift compared with the user's initial or morerecent hex bar deadlift maximum weight). If the user's performance asindicated by the received inputs is within 90-100% of the user's maximuminitial or previous performance, then the method 1800 may proceed toblock 1820. If the user's performance is not within 90-100% of theuser's maximum initial or previous performance, then the method 1800 mayproceed to block 1830. In some embodiments, the 90-100% ranges may bereplaced with any other ranges, for example 85-100% or 85-95% or 80-95%,etc.

At block 1820, the method 1800 may unlock the remaining exercises andactivities for the user to perform and scheduled. Then, the method 1800proceeds to block 1825 and updates the fitness program based on theuser's performance of the scheduled exercises and updates the predictedtarget date based on one or more of the user's initial fitness/forcemetrics, current fitness/force metrics, target fitness/force metrics,and the user's place in the fitness program. This method 1800 may berepeated for each day of the fitness program and each different exerciseroutine of the fitness program.

At block 1830, method 1800 locks the remaining activities and exercisefrom the user. This is because the exercises and activities scheduledwould be wasted because the user would not fully benefit from theexercises. Accordingly, the method 1800 would proceed to block 1835 andupdate the fitness program based on the user's inability to perform thescheduled exercises. For example, when the user is locked fromperforming an exercise or activity, the fitness program may update thesubsequent day's scheduled activities to include some or all of thelocked activities from the present day, thus ensuring the user does notmiss the exercises or activities all together. In some embodiments, thefitness program may replace exercises from subsequent days with newexercises that may be more beneficial and that will not require thetarget date to be extended. In some embodiments, the updating of thefitness program may comprise updating the target date and extending thetarget date to account for the day where the user was locked fromactivities. In some embodiments, if the fitness program identifies acommon routine of locked exercises, the fitness program mayautomatically adapt the scheduled activities to minimize the number ofdays that the user is locked from accessing. This automaticreconfiguration of the scheduled activities may result in the predictedtarget date being changed accordingly.

In some embodiments, the method 1800 may update the fitness programbased on the user completing an unscheduled activity that may meet therequirements of one or more of the exercises of the scheduled exercisesand activities for a given day. For example, the user may take a pet fora long walk or run that may meet the requirements for one or more of theexercises of the speed or warm-up routines. Accordingly, the method 1800may be configured to track the user's activities and apply them, aspossible, to the scheduled activities and exercises and update theschedule accordingly.

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any embodiment described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other embodiments. Various aspects of the novelsystems, apparatuses, and methods are described more fully hereinafterwith reference to the accompanying drawings. This disclosure may,however, be embodied in many different forms and should not be construedas limited to any specific structure or function presented throughoutthis disclosure. Rather, these aspects are provided so that thisdisclosure will be thorough and complete, and will fully convey thescope of the disclosure to those skilled in the art. Based on theteachings herein, one skilled in the art may appreciate that the scopeof the disclosure is intended to cover any aspect of the novel systems,apparatuses, and methods disclosed herein, whether implementedindependently of, or combined with, any other aspect described. Forexample, an apparatus may be implemented or a method may be practicedusing any number of the aspects set forth herein. In addition, the scopeof the described features is intended to cover such an apparatus ormethod which is practiced using other structure, functionality, orstructure and functionality in addition to or other than the variousaspects of the invention set forth herein. It may be understood that anyaspect disclosed herein may be embodied by one or more elements of aclaim.

As used herein, the terms “display” or “displaying” encompass a varietyof actions. For example, “displaying” may include presenting in audioform, visual form, or some other form that can be made known to thesenses. The term may also include a combination of two or more of theforegoing.

Although particular aspects are described herein, many variations andpermutations of these aspects fall within the scope of the disclosure.Although some benefits and advantages of the preferred aspects arementioned, the scope of the disclosure is not limited to particularbenefits, uses, or objectives. Rather, aspects of the disclosure arebroadly applicable to different personalization technologies, systemconfigurations, networks, and transmission protocols, some of which areillustrated by way of example in the figures and the includeddescription of the preferred aspects. The detailed description anddrawings are merely illustrative of the disclosure rather than limiting,the scope of the disclosure being defined by the appended claims andequivalents thereof.

The terms “processor” and “processor module,” as used herein are a broadterms, and are to be given their ordinary and customary meaning to aperson of ordinary skill in the art (and are not to be limited to aspecial or customized meaning), and refer without limitation to acomputer system, state machine, processor, or the, like designed toperform arithmetic or logic operations using logic circuitry thatresponds to and processes the basic instructions that drive a computer.In some embodiments, the terms can include ROM and/or RAM associatedtherewith.

As used herein, the term “determining” encompasses a wide variety ofactions. For example, “determining” may include calculating, computing,processing, deriving, investigating, looking up (for example, looking upin a table, a database or another data structure), ascertaining and thelike. Also, “determining” may include receiving (for example, receivinginformation), accessing (for example, accessing data in a memory) andthe like. Also, “determining” may include resolving, selecting,choosing, establishing, and the like.

As used herein, the terms “provide” or “providing” or “transmit” or“transmitting” encompass a wide variety of actions. For example,“providing” may include storing a value in a location for subsequentretrieval, transmitting a value directly to the recipient, transmittingor storing a reference to a value, and the like. “Providing” may alsoinclude encoding decoding, encrypting, decrypting, validating,verifying, and the like.

As used herein, the term “message” encompasses a wide variety of formatsfor representing information for transmission. A message may include amachine readable aggregation of information such as an XML document,fixed field message, comma separated message, or the like. While recitedin the singular, it will be understood that a message may becomposed/transmitted/stored/received/etc. in multiple parts.

Any reference to an element herein using a designation such as “first,”“second,” and so forth does not generally limit the quantity or order ofthose elements. Rather, these designations may be used herein as aconvenient method of distinguishing between two or more elements orinstances of an element. Thus, a reference to first and second elementsdoes not mean that only two elements may be employed there or that thefirst element must precede the second element in some manner. Also,unless stated otherwise a set of elements may include one or moreelements.

Conditional language used herein, such as, among others, “can,” “could,”“might,” “may,” “e.g.,” “for example,” and the like, unless specificallystated otherwise, or otherwise understood within the context as used, isgenerally intended to convey that certain embodiments include, whileother embodiments do not include, certain features, elements and/orstates. Thus, such conditional language is not generally intended toimply that features, elements and/or states are in any way required forone or more embodiments or that one or more embodiments necessarilyinclude logic for deciding, with or without author input or prompting,whether these features, elements and/or states are included or are to beperformed in any particular embodiment.

The term “or” as used herein is intended to mean an inclusive “or”rather than an exclusive “or.” Unless specified otherwise, or clear fromthe context, the phrase “X employs A or B” is intended to mean any ofthe natural inclusive permutations. That is, the phrase “X employs A orB” is satisfied by any of the following instances; X employs A; Xemploys B; or X employs both A and B. In addition, the articles “a” and“an” as used in this application and the appended claims shouldgenerally be construed to mean “one or more” unless specified otherwiseor clear from the context to be directed to a singular form.

Depending on the embodiment, certain acts, events, or functions of anyof the methods described herein can be performed in a differentsequence, can be added, merged, or left out altogether (for example, notall described acts or events are necessary for the practice of themethod). Moreover, in certain embodiments, acts or events can beperformed concurrently, for example, through multi-threaded processing,interrupt processing, or multiple processors or processor cores, ratherthan sequentially.

The various illustrative logical blocks, modules, circuits, andalgorithm steps described in connection with the embodiments disclosedherein can be implemented as electronic hardware, computer software, orcombinations of both. To clearly illustrate this interchangeability ofhardware and software, various illustrative components, blocks, modules,circuits, and steps have been described above generally in terms oftheir functionality. Whether such functionality is implemented ashardware or software depends upon the particular application and designconstraints imposed on the overall system. The described functionalitycan be implemented in varying ways for each particular application, butsuch embodiment decisions should not be interpreted as causing adeparture from the scope of the disclosure.

The various illustrative logical blocks, modules, and circuits describedin connection with the embodiments disclosed herein can be implementedor performed with a general purpose processor, a digital signalprocessor (DSP), an application specific integrated circuit (ASIC), afield programmable gate array (FPGA) or other programmable logic device,discrete gate or transistor logic, discrete hardware components, or anycombination thereof designed to perform the functions described herein.A general purpose processor can be a microprocessor, but in thealternative, the processor can be any conventional processor,controller, microcontroller, or state machine. A processor can also beimplemented as a combination of computing devices, for example, acombination of a DSP and a microprocessor, a plurality ofmicroprocessors, one or more microprocessors in conjunction with a DSPcore, or any other such configuration.

The blocks of the methods and algorithms described in connection withthe embodiments disclosed herein can be embodied directly in hardware,in a software module executed by a processor, or in a combination of thetwo. A software module can reside in RAM memory, flash memory, ROMmemory, EPROM memory, EEPROM memory, registers, a hard disk, a removabledisk, a CD-ROM, or any other form of computer-readable storage mediumknown in the art. An exemplary storage medium is coupled to a processorsuch that the processor can read information from, and write informationto, the storage medium. In the alternative, the storage medium can beintegral to the processor. The processor and the storage medium canreside in an ASIC. The ASIC can reside in a user terminal. In thealternative, the processor and the storage medium can reside as discretecomponents in a user terminal.

Software or instructions may also be transmitted over a transmissionmedium. For example, if the software is transmitted from a website,server, or other remote source using a coaxial cable, fiber optic cable,twisted pair, digital subscriber line (DSL), or wireless technologiessuch as infrared, radio, and microwave, then the coaxial cable, fiberoptic cable, twisted pair, DSL, or wireless technologies such asinfrared, radio, and microwave are included in the definition oftransmission medium.

Further, it should be appreciated that modules and/or other appropriate,means for performing the methods and techniques described herein can bedownloaded and/or otherwise obtained by a device as applicable. Forexample, such a device can be coupled to a server to facilitate thetransfer of means for performing the methods described herein.Alternatively various methods described herein can be provided viastorage means (e.g., RAM, ROM, a physical storage medium such as acompact disc (CD) or floppy disk, etc.), such that a device can obtainthe various methods upon coupling or providing the storage means to thedevice. Moreover, any other suitable technique for providing the methodsand techniques described herein to a device can be utilized.

The interfaces shown represent example implementations of a tangibledevice configured to perform one or more of the features described. Theinterface elements may be implemented via the execution of machinereadable instructions to generate a graphical representation of theinterface on a device. The graphical representation may be, for example,a machine readable mark-up language (e.g., HTML), executable machinereadable instructions (e.g., Javascript), or combinations of these orother display technologies. In some implementations, the interface maybe constructed of physical components such as buttons, circuits, lights,and the like. The interface components may be controlled by a circuitconfigured to implement the methods described above. In someimplementations, it may be desirable to control the interface componentsvia a processor configured to execute stored instructions which causethe interface components to perform aspects of the methods described.

It is to be understood that the claims are not limited to the preciseconfiguration and components illustrated above. Various modifications,changes and variations may be made in the arrangement, operation anddetails of the methods and apparatus described above without departingfrom the scope of the claims.

While the foregoing is directed to aspects of the present disclosure,other and further aspects of the disclosure may be devised withoutdeparting from the basic scope thereof, and the scope thereof isdetermined by the claims that follow.

While the above detailed description has shown, described, and pointedout novel features as applied to various embodiments, it will beunderstood that various omissions, substitutions, and changes in theform and details of the devices or algorithms illustrated can be madewithout departing from the spirit of the disclosure. As will berecognized, certain embodiments of the disclosures described herein canbe embodied within a form that does not provide all of the features andbenefits set forth herein, as some features can be used or practicedseparately from others. The scope of certain disclosures disclosedherein is indicated by the appended claims rather than by the foregoingdescription. All changes which come within the meaning and range ofequivalency of the claims are to be embraced within their scope.

What is claimed is:
 1. A footwear system, comprising: an article offootwear, comprising a wireless transmitter and an electronic sensor,the wireless transmitter configured to wirelessly transmit a sensorsignal based on an output form the electronic sensor; and a wirelessreceiver, configured to receive the sensor signal from the wirelesstransmitter; a processing unit, configure to: receive the sensor signalfrom the wireless receiver; compare the sensor signal as received to atarget metric value of a predetermined fitness activity to obtain acomparison; based on the comparison, cause a user interface to display areal-time adjustment to the predetermined fitness activity.
 2. Thefootwear system of claim 1, wherein the at least one identified targetmetric comprises a target force metric value, a target 40 yard dashtime, a target vertical jump height, or a target hex bar deadliftweight.
 3. The footwear system of claim 2, wherein the electronic sensoris a force sensor and the target metric value is the target force metricvalue.
 4. The footwear system of claim 1, wherein the predeterminedfitness activity is a current predetermined fitness activity, andwherein the processing unit is further configured to: receive the sensorsignal from the wireless receiver over a plurality of predeterminedfitness activities, including the current predetermined fitnessactivity; obtain the comparison based on the sensor signals over theplurality of predetermined fitness activities; and cause the userinterface to display the real-time adjustment to the currentpredetermined fitness activity.
 5. The footwear system of claim 1,wherein the processing unit is further configured to cause the userinterface to display a prompt for the user to manually enter aphysiological issue and wherein the processing unit is furtherconfigured to display the real-time adjustment further based on thephysiological issue.
 6. The footwear system of claim 1, wherein theprocessing unit is further configured to: generate a projectedperformance based on the real-time adjustment to the predeterminedfitness activity being implemented by the user; and cause the userinterface to display the projected performance along with the real-timeadjustment.
 7. The footwear system of claim 6, wherein the processingunit is further configured to cause the user interface to display anunadjusted projected performance along with the projected performance.8. A non-transitory computer readable medium, comprising instructionswhich, when implemented by a processing unit, cause the processing unitto perform operations comprising: receive a sensor signal based on anoutput form an electronic sensor of an article of footwear; compare thesensor signal as received to a target metric value of a predeterminedfitness activity to obtain a comparison; based on the comparison, causea user interface to display a real-time adjustment to the predeterminedfitness activity.
 9. The computer readable medium of claim 8, whereinthe at least one identified target metric value comprises a target forcemetric value, a target 40 yard dash time, a target vertical jump height,or a target hex bar deadlift weight.
 10. The computer readable medium ofclaim 9, wherein the electronic sensor is a force sensor and the targetmetric value is the target force metric value.
 11. The computer readablemedium of claim 8, wherein the predetermined fitness activity is acurrent predetermined fitness activity, and wherein the processing unitis further configured to: receive the sensor signal from the wirelessreceiver over a plurality of predetermined fitness activities, includingthe current predetermined fitness activity; obtain the comparison basedon the sensor signals over the plurality of predetermined fitnessactivities; and display the real-time adjustment to the currentpredetermined fitness activity.
 12. The computer readable medium ofclaim 8, wherein the processing unit is further configured to cause theuser interface to display a prompt for the user to manually enter aphysiological issue and wherein the processing unit is furtherconfigured to display the real-time adjustment further based on thephysiological issue.
 13. The computer readable medium of claim 8,wherein the processing unit is further configured to: generate aprojected performance based on the real-time adjustment to thepredetermined fitness activity being implemented by the user; and causethe user interface to display the projected performance along with thereal-time adjustment.
 14. The computer readable medium of claim 13,wherein the processing unit is further configured to cause the userinterface to display an unadjusted projected performance along with theprojected performance.
 15. A processing unit-implemented method,comprising: receiving a sensor signal based on an output form anelectronic sensor of an article of footwear; comparing the sensor signalas received to a target metric value of a predetermined fitness activityto obtain a comparison; based on the comparison, causing a userinterface to display a real-time adjustment to the predetermined fitnessactivity.
 16. The method of claim 15, wherein the at least oneidentified target metric value comprises a target force metric value, atarget 40 yard dash time, a target vertical jump height, or a target hexbar deadlift weight.
 17. The method of claim 15, wherein thepredetermined fitness activity is a current predetermined fitnessactivity, and further comprising: receiving the sensor signal over aplurality of predetermined fitness activities, including the currentpredetermined fitness activity; obtaining the comparison based on thesensor signals over the plurality of predetermined fitness activities;and causing the user interface to display the real-time adjustment tothe current predetermined fitness activity.
 18. The method of claim 15,further comprising causing the user interface to display a prompt forthe user to manually enter a physiological issue and wherein theprocessing unit is further configured to cause the user interface todisplay the real-time adjustment further based on the physiologicalissue.
 19. The method of claim 15, further comprising: generating aprojected performance based on the real-time adjustment to thepredetermined fitness activity being implemented by the user; andcausing the user interface to display the projected performance alongwith the real-time adjustment.
 20. The method of claim 19, furthercomprising causing the user interface to display an unadjusted projectedperformance along with the projected performance.